79

Android アプリで、proguard をオンにしていくつかの機能をテストしたいと考えています。

本当に「デバッグ」する必要はありませんが、Eclipseで実行を押したときにプロガードを実行したいです。毎回バイナリをエクスポートしたくないので(リリースモードで)、apkとして保存してデバイスに取得してテストします。

この方法でプロガードを実行する方法はありますか?

アップデート:

Eclipseを使用していない場合、これは可能なようです。質問のタイトルにEclipseが含まれていないため、この質問には複数の正解があります。

4

5 に答える 5

47

古い答え:

http://developer.android.com/tools/help/proguard.html

ProGuard は、リリース モードでアプリケーションをビルドする場合にのみ実行されるため、デバッグ モードでアプリケーションをビルドするときに難読化されたコードを処理する必要はありません。

ant release を実行するか、Eclipse で Export Wizard を使用してアプリケーションをリリースproguard.configモードでビルドすると、ビルド システムはプロパティが設定されているかどうかを自動的にチェックします。そうである場合、ProGuard はアプリケーションのバイトコードを自動的に処理してから、すべてを.apkファイルにパッケージ化します。デバッグ モードでビルドすると、デバッグがより面倒になるため、ProGuard は呼び出されません。

更新: 2016 年 13 月 3 日

新しいgradleビルドシステムで可能です。build.gradleファイルでに設定minifyEnabledする必要があります。通常、プロガードはリリースモードで実行されています。リソースの縮小など、他のオプションも利用できます。@ http://tools.android.com/tech-docs/new-build-systemで役立つ情報を見つけることができますtrue

こちらもご覧ください@

http://developer.android.com/tools/building/configuring-gradle.html

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

        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
   }
 }
于 2013-05-15T08:04:14.453 に答える
0

Android Studio-dontobfuscateでは、Proguard ルール ファイルでオプションを使用でき、デバッガーは正常に動作します。Eclipe でも動作するかどうかはわかりません。

于 2016-06-13T16:57:12.877 に答える