我想跳过删除特定的类。它通常不会在我的应用程序中的任何位置引用,但只能通过反射来引用,因此它会被缩放器删除。它被包中的其他“相邻”类引用,但是不直接用于我的应用程序,而只是通过反射。Java ProGuard。类保留(不要删除),但允许被混淆
我决定专门为这个特殊类对待,映射:
org.mypckg.Helper -> gh6
...那么ofcourse我改变了反射调用withing我的应用程序:
forName("gh6")
似乎没有问题与我的映射输入,但映射规则本身不足以防止类删除。此外,我仍然无法使用-keep开关保留课程,因为它使用原来的名称(org.mypckg.Helper)保留它,我不想这样做。
由于某种原因,我无法在项目中手动折射(重命名)类为'gh6'。
在我写完这个问题后,我想起了一个非常简单的解决方案。在我的应用程序中的某个地方“假使用”,但直接,而不是反思。但是,我想知道是否有方法使用ProGuard保存它? – PatlaDJ
为什么仅仅为这个班保留原来的名字是个问题?它在代码中被高度使用? –
不常用,但重要。 – PatlaDJ