在Android Studio中启用proguard时构建错误

时间:2014-04-09 12:58:03

标签: android proguard

我在build.gradle中使用了以下配置来启用proguard

buildTypes{
    qa {
        runProguard true
        proguardFile getDefaultProguardFile('proguard-android.txt')
        versionNameSuffix "_qa"
        signingConfig signingConfigs.debugConfig
    }
}

我收到以下错误:

  

错误:任务执行失败':Main:proguardQa'。   proguard.ParseException:在' @'之前期待类成员名称在文件' /mnt/scratch/git/projectname/Main/build/proguard/qa/aapt_rules.txt'

的第441行

这个aapt_rules.txt文件会自动生成。

出了什么问题?

2 个答案:

答案 0 :(得分:2)

在我的情况下,问题出现在

的布局中
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:minHeight="@null"
android:onClick="@null" >

proguard尝试使用&#34; null&#34;作为班级成员的名称

答案 1 :(得分:1)

Aapt确实会自动生成此文件,但它有一些已知问题。生成的文件的第441行可能会提供一些信息。值得注意的是,在某些情况下,aapt存在引用字符串的问题,而不是XML资源文件中的类名或方法名的原始字符串。然后,您应该使用原始字符串来处理这些情况。