ProGuard
ProGuard, Java optimizer and obfuscator
ProGuard is a free shrinker, optimizer, obfuscator, and preverifier for Java bytecode. It detects and removes unused classes, fields, methods, and attributes. It optimizes bytecode and removes unused instructions. It renames the remaining classes, fields, and methods using short meaningless names. ProGuard can be run as a task in Gradle.