web-dev-qa-db-ja.com

proguard-project.txtがAndroid studioで見つかりません

Android and and Android Studio。

学びながら、Google Play Services for Adsなどに出会いました。

プロジェクトでプロガードを有効にしようとしましたが、以下のリンクproguardを読んでいます。

問題は、プロジェクト構造でproguard-project.txtまたはproguard.cfgを見つけることができないことです...

代わりに、プロジェクト構造にproguard-rules.txtがあります...

プロジェクトでこれらの不足しているファイルを見つけてプロガードを構成するにはどうすればよいですか...

助けてください...

28
MCA Shah

使用 proguard-rules.txt 代わりにファイル。 Proguardは、ルール入力ファイルの名前に特別な意味を付けません。 Android Studioの最近のバージョンで作成された新しいプロジェクトの場合、ビルドファイルで設定されたものを使用します。

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

の proguard-Android.txt ファイルはSDK内に存在し、すべてのプロジェクトで使用する合理的なAndroid全体のデフォルトが含まれています。

26
Scott Barta

Android Studioの使用を開始したときに同じ問題が発生しました

Project fileモードでプロジェクトをプレビューしているため、ProGuardファイルを表示できません。ほとんどの場合、Androidビューモードになります。

enter image description here

Android]選択のドロップダウンリストをクリックしてモードを変更し、Project Filesを選択して、プロジェクト内のすべてのファイルを次のように表示する必要があります。

enter image description here

その後、Androidプロジェクト構造ビューモードで隠しファイルを表示できます。

enter image description here

そして、これは良い例です ProGuard

23
Sami Eltamawy

proguard-project.txtにあります

C:\Users\"USER"\AppData\Local\Android\android-studio\sdk\tools\proguard

"USER"は、c-drive\users\yournameをクリックしたときに表示される名前です。

18
star

以前に投稿したコードは、用途に応じて次のように修正する必要があります。

buildTypes {
     release {
         minifyEnabled true  //according to your use
         // or
         minifyEnabled false //according to your use
         // runProguard false ** NOT USED ANYMORE, replaced by minifyEnabled
         proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
     }
 }
9

Android Studio。 Eclipseからプロジェクトをインポートしたため、Android Studioは自動的に作成しませんでした。

1-proguard-rules.proをサンプルプロジェクトからプロジェクトのbuild.gradleと同じフォルダーにコピーします(このファイルをコンピューターで検索するか、空のプロジェクトを作成できます)

2-build.gradleのコードを編集して、proguard-rules.txtの代わりにこのファイルを使用します。

    buildTypes {
    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        signingConfig signingConfigs.release
    }
}
  1. グラドルを同期してから、ビルド> APKをビルドします。私のためにうまく働いた。
3
Nagev

proguard-rules.txtは、OS Xの端末コマンドで見つけることができます(Windowsでも同様です)

$ locate proguard-rules.txt

私のマシンでは、出力は次のとおりです。

/Applications/Android Studio.app/Contents/plugins/Android/lib/templates/gradle-projects/AndroidWearModule/root/proguard-rules.txt.ftl
/Applications/Android Studio.app/Contents/plugins/Android/lib/templates/gradle-projects/NewAndroidModule/root/proguard-rules.txt.ftl
/Applications/Android Studio.app/Contents/plugins/Android/lib/templates/gradle-projects/NewAndroidTVModule/root/proguard-rules.txt.ftl
/Applications/Android Studio.app/Contents/plugins/Android/lib/templates/gradle-projects/NewGlassModule/root/proguard-rules.txt.ftl

このファイルを配置するには、txt以外の余分な拡張子を削除します。独自のものを作成してAndroidプロジェクトに配置できます。

# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in ${sdkDir}/tools/proguard/proguard-Android.txt
# You can edit the include path and order by changing the proguardFiles
# directive in build.gradle.
#
# For more details, see
#   http://developer.Android.com/guide/developing/tools/proguard.html

# Add any project specific keep options here:

# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
#   public *;
#}
1
zeeawan

Android studioを更新した後、同じ問題が発生しました。プロジェクトを新しいバージョンにインポートできませんでした。gradleビルドファイルの変更。

buildTypes {
    release {
        minifyEnabled false *//change to this not runProguard false*
        proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
    }
}