Java 设置ProGuard以混淆局部变量和参数

Java 设置ProGuard以混淆局部变量和参数,java,proguard,Java,Proguard,我似乎找不到在一个模糊化了的类的方法中会模糊化局部变量的设置 下面是我反编译的一个类的摘录,其中有一些明显缺失的部分。理想情况下,方法的参数和局部变量也会被混淆 public class eA extends gu { private final gt a; private final gt b; public static boolean a(fy game) { boolean playerDead = game.k().j() <= 0; boole

我似乎找不到在一个模糊化了的类的方法中会模糊化局部变量的设置

下面是我反编译的一个类的摘录,其中有一些明显缺失的部分。理想情况下,方法的参数和局部变量也会被混淆

public class eA extends gu
{
  private final gt a;
  private final gt b;

  public static boolean a(fy game)
  {
    boolean playerDead = game.k().j() <= 0;
    boolean enemyDead = game.g().a().size <= 0;
    boolean wavesRemain = game.r() > 0;
    return (playerDead) || ((!wavesRemain) && (enemyDead));
  }

  public eA(gt gameState, gt boardState)
  {
    this.b = gameState;
    this.a = boardState;
  }

  public void a()
  {
    n();
    boolean playerDead = this.f.k().j() <= 0;
    boolean enemyDead = this.f.g().a().size <= 0;
    if (a(this.f)) {
      if (enemyDead) {
        this.f.a(new eG(1));
        this.e.a(new eW());
      } else if (playerDead) {
        this.f.a(new eF());
公共类eA扩展
{
私人决赛GTA;
私人决赛GTB;
公共静态布尔a(fy游戏)
{

boolean playerDead=game.k().j()您应该删除或优化选项
-keepattributes
。这意味着保留具有局部变量名的属性:

-keepattributes LocalVariableTable,LocalVariableTypeTable
你至少可以排除这些

-keepattributes !LocalVariableTable,!LocalVariableTypeTable
理想情况下,只保留严格要求的属性


参见PROGORD手册>用法>

你也可以张贴你的PROGART配置文件文件,谢谢你的浏览,也考虑了<代码>变量名称在这个链接中没有被混淆< /代码>:他们说的对我的情况是正确的(即反编译者想出正确的名字)
-keepattributes !LocalVariableTable,!LocalVariableTypeTable