6

Android開発者ページとウェブ上の他のページから読みました。しかし、Eclipse から mapping.txt を生成する方法が見つかりませんでした。

Eclipse がこのファイルを生成している場合、これはどこに保存されていますか?

私はproject.propertiesを持っています:

target=android-14
proguard.config=proguard.cfg

そしてproguard.cfg :

-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontpreverify
-verbose
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*

-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends android.app.backup.BackupAgentHelper
-keep public class * extends android.preference.Preference
-keep public class com.android.vending.licensing.ILicensingService


-keepclasseswithmembernames class * {
    native <methods>;
}

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet);
}

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet, int);
}

-keepclassmembers class * extends android.app.Activity {
   public void *(android.view.View);
}

-keepclassmembers enum * {
    public static **[] values();
    public static ** valueOf(java.lang.String);
}

-keep class * implements android.os.Parcelable {
  public static final android.os.Parcelable$Creator *;
}

.projectおよび.classpath

4

2 に答える 2

5

Eclipse プラグインの現在のバージョン (20.0.0) では、デフォルトで ProGuard がproguard/mapping.txt(apk をエクスポートするとき) としてマッピング ファイルを書き出すことができます。

bin/proguard/mapping.txtAnt ビルド プロセスでは、デフォルトで、ProGuard が(リリース ビルドの作成時に)としてマッピング ファイルを書き出すことができます。

Cfr. Android SDK ドキュメント > 開発 > ツール > ProGuard。

于 2012-08-01T19:08:22.667 に答える
0

はい、解決しました。これらの行を Proguard.cfg に追加するだけで、プロジェクト フォルダーにProguardという名前のフォルダーが作成されます。

-dump proguard/class_files.txt 
-printseeds proguard/seeds.txt 
-printusage proguard/unused.txt 
-printmapping proguard/mapping.txt 

これが誰かに役立つことを願っています。

于 2012-08-01T10:16:44.337 に答える