我正在尝试将Umweltzone Android application更新为SDK 23.因此,我按如下方式更改项目配置:
// Excerpt from Umweltzone/build.gradle
compileSdkVersion 23
// ...
compile "com.android.support:design:23.1.1"
当我构建发布版本时,失败并出现此错误(拖尾部分):
...
注意:有3个未知类的引用 您应该检查您的配置是否有拼写错误 (http://proguard.sourceforge.net/manual /troubleshooting.html#unknownclass)注意:有2个类试图使用访问封闭类 反思。
您应该考虑保留内部类属性 (使用' -keepattributes InnerClasses') (http://proguard.sourceforge.net/manual/troubleshooting.html#attributes)注意:保留的类成员中有100个unkept描述符类。 您应该考虑明确保留上述类 (使用' -keep') (http://proguard.sourceforge.net/manual/troubleshooting.html#descriptorclass)
注意:有5个未解析的类或动态引用 接口。
您应该检查是否需要指定其他程序罐 (http://proguard.sourceforge.net/manual/troubleshooting.html#dynamicalclass)注意:通过以下方式对班级成员进行了3次访问 自省。
您应该考虑明确保留提到的类成员 (使用' -keep'或' -keepclassmembers')。
(http://proguard.sourceforge.net/manual/troubleshooting.html#dynamicalclassmember)警告:库类成员有1个未解析的引用 您可能需要更新库版本 (http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedlibraryclassmember)
警告:处理任务java.io.IOException时出现异常:请 首先纠正上述警告 :Umweltzone:transformClassesAndResourcesWithProguardForRelease FAILED
失败:构建因异常而失败。
- 出了什么问题:任务执行失败':Umweltzone:transformClassesAndResourcesWithProguardForRelease'。
> java.io.IOException:请先纠正上述警告。
发布版本适用于SDK 22.可以找到ProGuard配置here。完整的构建输出可以找到here,因为由于长度限制,StackOverflow不允许我粘贴在这里。
答案 0 :(得分:3)
坚持错误信息,即首先纠正上述警告。
以上警告是:
com.google.android.gms.auth.GoogleAuthUtil: can't find referenced method
'void setLatestEventInfo(android.content.Context,java.lang.CharSequence,
java.lang.CharSequence,android.app.PendingIntent)' in library class android.app.Notification
最有可能的是,您不需要这种方法。因此,您可以通过在proguard配置中添加以下行来消除警告:
-dontwarn com.google.android.gms.**