更改类名,方法名并将其导出

时间:2016-08-21 11:37:03

标签: java android reflection

您好我希望有人可以帮我完成这项任务。我想要更改包中所有字段,方法和类的名称(一次只做一个类也可以)。我知道即使使用Java Reflection我也无法在课堂外进行更改。

我的示例java类:

public class Foo {

    private final Object foo = ...
    private Object foo1 = ...

    private void foo(){
       Object foo;
    }

}

生成的类应该变为:

public class A{

    private final Object a= ...
    private Object b = ...

    private void a(){
       Object a; //if possible
    }

}

如果有人可以告诉我或给我代码来实现这一点,那将是很棒的,如果可以在任何其他语言上完成它也会很棒。这显然是在最后的手段完成的,只会针对非活动的类,服务或在包外引用的任何其他android文件。

1 个答案:

答案 0 :(得分:0)

尝试proguard,它是免费的。

您有关于如何在Android中使用它的文档:  https://developer.android.com/studio/build/shrink-code.html

此外,您还提供了许多功能来减少APK的大小。

  

ProGuard可以进行代码收缩,可以检测并删除   打包时未使用的类,字段,方法和属性   应用程序,包括来自包含的代码库的那些(使它成为一个   用于解决64k参考限值的有价值的工具)。 ProGuard的   还优化字节码,删除未使用的代码指令,以及   用short来模糊剩余的类,字段和方法   名。混淆的代码使您的APK难以逆转   工程师,在您的应用使用时特别有价值   安全敏感功能,例如许可验证。