[RetroGuard-v2.2.x only]
Java classes are often packaged within a hierarchy of lengthy package
names. While normal obfuscation replaces each package name with a short
identifier, it is instead possible to replace the whole chain of package names
with a single short name. For example, RetroGuard would usually rename the
class:
com/retrologic/retroguard/obfuscator/ClassTree
by renaming each package, level by level, giving an obfuscated name such as:
a/a/b/f/bE
By repackaging to the top level of the class hierarchy, the class would be
renamed such as:
a/bE
The use of these very short, repackaged names throughout your obfuscated
classes can further reduce the size of your deployed software.
To have RetroGuard repackage classes using the smallest possible package
names, simply add the script line:
.option Repackage
RetroGuard performs this repackaging with care, so that none of the class
relationships within a package or across packages are changed in any way.
'.option Repackage' is part of RetroGuard's internal default script and
repackaging is recommended in general.