【问题标题】:Android Apk not working after using proguard使用proguard后Android Apk无法正常工作
【发布时间】:2015-12-01 16:19:10
【问题描述】:

我是 proguard 的新手,遇到了一个不知道如何解决的问题。我能够使用 proguard 创建我的应用程序的签名 apk 并将其安装在我的设备上,但是当我尝试启动应用程序时,我得到:

java.lang.RuntimeException: Unable to instantiate application test.myapp.first.com.CustomApplication: java.lang.ClassNotFoundException: Didn't find class "test.myapp.first.com.CustomApplication" on path: DexPathList[[zip file "/data/app/test.myapp.first.com-2/base.apk"],nativeLibraryDirectories=[/data/app/test.myapp.first.com-2/lib/arm, /data/app/test.myapp.first.com-2/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]

我尝试使用 -keep 类从混淆中排除该类以及 Activity/Application 子类,是的,在 android 清单中,应用程序类的路径是完整的包路径。我已经反编译了签名的apk,实际上java类被放置在正确的路径中。

知道如何修复它吗?

谢谢

【问题讨论】:

  • 我一直觉得这是一个痛苦的过程。基本上,我首先将所有东西都保存在我的包裹中,然后慢慢地让包裹变得更加具体,直到它停止工作。然后我退出那个不工作的,然后在包树的其他地方再试一次。可能有更好的方法,但我个人认为proguard是一个痛苦的.....

标签: android proguard classnotfoundexception android-proguard


【解决方案1】:

尝试使用来自 sdk 的 proguard config,它位于tools/proguard/,例如proguard-android-optimize.txt

【讨论】:

    猜你喜欢
    • 2015-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-18
    相关资源
    最近更新 更多