我有一个使用ADT捆绑包在Eclipse中创建的Android项目。我想使用ProGuard导出发行版APK,但不断出现错误。
我知道这与Google Play服务库有关,因为当我从项目中删除它时,它会成功导出APK。
project.properties看起来像这样:
proguard.config=proguard-android.cfg
target=android-17
android.library.reference.1=../google-play-services_lib
proguard-android.cfg看起来像这样:
-libraryjars <java.home>/lib/rt.jar
-printmapping proguard-android.map
-dontwarn
-dontoptimize
-keep class com.google.android.gms.** { *; }
-dontwarn com.google.android.gms.**
我添加了keep类定义,因为在运行它时出现以下错误:
Proguard returned with error code 1. See console.
[2019-10-09 06:34:32 - AndroidApp] Proguard returned with error code 1. See console
[2019-10-09 06:34:32 - AndroidApp] Note: there were 1030 duplicate class definitions.
[2019-10-09 06:34:32 - AndroidApp] You should check if you need to specify additional program jars.
[2019-10-09 06:34:32 - AndroidApp] Unexpected error while performing partial evaluation:
[2019-10-09 06:34:32 - AndroidApp] Class = [com/google/android/gms/d/f]
[2019-10-09 06:34:32 - AndroidApp] Method = [a(ILandroid/app/Activity;Landroid/support/v4/app/Fragment;ILandroid/content/DialogInterface$OnCancelListener;)Z]
[2019-10-09 06:34:32 - AndroidApp] Exception = [java.lang.IllegalArgumentException] (Can't find any super classes of [com/google/android/gms/d/g] (not even immediate super class [android/support/v4/app/DialogFragment]))
关于错误的含义以及如何使它起作用,有人可以给我任何帮助吗?