Dan*_*ele 6 android android-gradle-plugin android-proguard
尝试在发布模式下构建应用程序时遇到此错误。
错误:属性签名需要InnerClasses属性。检查-keepattributes指令
我的proguard-rules.pro行看起来像这样:
-keepattributes Signature
Run Code Online (Sandbox Code Playgroud)
编译器指的是什么InnerClasses?我要省略什么?
kj0*_*007 12
签名(Java 8或更高版本)仅适用于Java 8或更高版本以及InnerClasses(Java 5或更高版本),因此请检查您的Android Studio是否使用Java SDK版本。请使用以下设置更新您的Proguard配置
将此行添加到您的proguard-rules.pro文件:
-keepattributes InnerClasses
Run Code Online (Sandbox Code Playgroud)
内部类(Java 5或更高版本)
指定一个类及其内部类和外部类之间的关系。除此以外,在内部类和外部类的名称之间使用“ $”分隔符的命名约定之外,内部类与普通类一样。编译器可能需要此信息才能找到已编译库中引用的类。代码可以通过反射来访问此信息,例如以得出类的简单名称。
签名(Java 8或更高版本)
指定类,字段或方法的通用签名。编译器可能需要此信息来正确地编译使用已编译库中泛型类型的类。代码可以通过反射访问此签名。
有关更多详细信息-keepattributes和您可以应用的更多设置,请参见下面的链接。
| 归档时间: |
|
| 查看次数: |
1286 次 |
| 最近记录: |