Android Studio&ProGuard:无法parsing符号getDefaultProguardFile?

IDE :Android Studio 1.1.0

主题 :ProGuard

问题 :Android Studio无法识别的ProGuard文件或工具, getDefaultProguardFile 无法parsing ,应用程序中没有proguard-android.txtproguard-rules.txt文件,请参阅以下图像:(从build.gradle)

build.gradle截图

如何解决这个问题,并实现ProGuard保护我的应用程序?

  • Proguard说inputjar文件被指定两次
  • 如何模糊我用kotlin编码的sdk(并摆脱元数据)
  • Google Analytics(分析)回溯Proguard
  • 使用jsoup与proguard关闭力关闭
  • 使用ProGuard值得麻烦吗?
  • 如何在我的Android库(AAR)中包含一个proguardconfiguration
  • ProGuard不使用okhttp
  • Android - 如何检查Proguard混淆有效?
  • 尝试改变成 –

     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 

    我遇到了同样的麻烦,如下所示:

    在这里输入图像说明

    错误消息使得它看起来好像该文件没有被find,因此没有被读取。 但是,我进入sdk / tools / proguard文件夹来查找文件,并在顶部添加了一个语句来testing文件是否被实际读取。 我把它放在顶部“这会崩溃吗?”

    在这里输入图像说明

    正如您从错误中看到的那样,在构build过程中确实发现了该文件,并且我添加的语句崩溃了。 因此,看起来“不能解决的符号”错误是给出了一个误报。

    我真的有同样的问题。 所以这就是我的项目工作的原因:

     release { minifyEnabled true proguardFile 'proguard-rules.pro' } 

    通过此代码testing:

      Log.d(TAG, "TEST!"); Log.i(TAG, "INFO!"); Log.e(TAG, "ERROR!"); 

    在proguard.pro中,我放置了这个片段(它删除了字节码中的所有Log.d语句)

     -assumenosideeffects class android.util.Log { public static int d(...); } 

    猫说:

     MainAct﹕ INFO! MainAct﹕ ERROR! 

    – >正是我试图实现:)

    PS:这假定你有模块(又名'app')文件夹中的proguard.pro文件。

    尝试:

    proguardFiles.add(file('proguard-android.txt')) proguardFiles.add(file('proguard-rules.txt'))

    这个结构在gradle-experimental插件中起作用

    我解决了Android Studio的问题,而不是使用双引号来识别方法,而是使用双引号。 以下是我最终使用的:

      release{ shrinkResources true minifyEnabled true proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" } 

    尝试这个,

     { minifyEnabled false // proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' proguardFiles 'proguard-rules.pro' } 

    在我的情况下:

     buildTypes { release { runProguard false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } 

    minifyEnabled false工作replacerunProguard false