2

我的调试 APK 中的所有内容都运行良好。但是,当我导出我的 APK 并安装它时,一切正常,直到我调用引用的库。

E/AndroidRuntime(32571):    at com.znood.znoodapp.ShowResultsActivity.a (Unknown Source)

我正在使用 ProGuard。

我的库位于 libs 目录中,并被添加到构建路径中。

任何指针都非常感谢=)

4

2 回答 2

2

问题出在 Google Gson 库上。Proguard 将类名转换为混淆的类名,从而呈现 json 转换错误。

为了解决这个问题,请确保在您的 proguard-project.txt 中有以下内容

# the classes that you use for Gson conversion
-keep class com.yourapp.objects.** { *; }

# without this line, I was having ClassCastException
-keepattributes Signature, *Annotation*

我希望这可以帮助某人=)

于 2012-10-31T16:24:42.737 回答
1

如果你还没有定义你的库,proguard-project.txt那么你可以像这样添加

-libraryjars /libs/smack.jar
-libraryjars /libs/libphonenumber-5.0v1.5.jar

使用 proguard 的 Android 混淆应用程序会不断混淆库 jar - 是吗?

于 2012-10-31T12:45:16.803 回答