[〜#〜] ide [〜#〜]:Android Studio 1.1.0
被験者:ProGuard
問題:ProGuardファイルまたはツールがAndroid Studio、getDefaultProguardFile
で認識されない)を解決できませんそして、アプリにはproguard-Android.txt
およびproguard-rules.txt
ファイルがありません。下の画像を参照してください:(build.gradleから)
これを修正し、アプリのProGuard保護を実現する方法?
に変更してみてください-
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
私は本当に同じ問題を抱えていました。だからここに私のプロジェクトが機能した理由があります:
release {
minifyEnabled true
proguardFile 'proguard-rules.pro'
}
このコードでテスト:
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:これは、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'
}