Java Proguard在与许多外部库签署apk时返回错误代码1
我正在为Mac使用Eclipse。 当我想要导出一个签名的apk时,我会得到一个“返回的Proguard,错误代码为1。请参阅控制台”错误Java Proguard在与许多外部库签署apk时返回错误代码1,java,android,eclipse,android-proguard,Java,Android,Eclipse,Android Proguard,我正在为Mac使用Eclipse。 当我想要导出一个签名的apk时,我会得到一个“返回的Proguard,错误代码为1。请参阅控制台”错误 我的项目根文件夹中有以下两个文件: “proguard android.txt”和“project.properties” 在project.properties中,我有: target=android-17 proguard.config=proguard-project.txt android.library.reference.1=../google
- 我的项目根文件夹中有以下两个文件: “proguard android.txt”和“project.properties”
- 在project.properties中,我有: target=android-17 proguard.config=proguard-project.txt android.library.reference.1=../google-play-services_lib android.library.reference.2=../FacebookSDK
com.my.app.va.debug.ConfigureLog4j: can't find referenced class de.mindpipe.android.logging.log4j.LogConfigurator
com.my.app.va.debug.HockeyAppHelper: can't find referenced class net.hockeyapp.android.ExceptionHandler
我已经将这些行放在“proguard android.txt”中,但错误仍然存在:
-keep public class de.mindpipe.android.logging.**
-dontwarn de.mindpipe.android.logging.**
-keep public class net.hockeyapp.**
-dontwarn net.hockeyapp.**
我可能做错了什么
更新:
我已将文件名从“proguard android.txt”更改为“proguard project”,并将其添加到我的proguard中,“引用类”错误消息消失:
-dontwarn de.mindpipe.android.**
-keep public class de.mindpipe.android.**
-dontwarn net.hockeyapp.android.**
-keep public class net.hockeyapp.android.**
无论如何。。。这是一个实际的解决方案吗?或者,我只是在隐瞒问题
其他警告仍然存在:
如果使用Eclipse,则proguard文件名应在project.properties中定义;如果使用gradle或Android Studio,则应在build.gradle中定义 它通常包含proguard.config=${sdk.dir}/tools/proguard/proguard android.txt:proguard project.txt 您还应包括以下内容:
-keep class android.support.v4.app.** { *; }
-keep interface android.support.v4.app.** { *; }
更多官方信息请访问
其他一些相关讨论:以及
-keep class android.support.v4.app.** { *; }
-keep interface android.support.v4.app.** { *; }