Android の Proguard ファイルでエラーが発生しました。
要点は、Android プロジェクトでの使用方法を知っていますが、今度はそれを Android ライブラリ プロジェクトに使用し、.jar
抽出 (ライブラリにはリソースがありません) して、コードを難読化する必要があるということです。私のライブラリを誰もが使用できるように配布したいのですが、コードは難読化されています。
私の Android ライブラリ プロジェクトは通常のものです。ライブラリ プロジェクト.jar
の「bin」フォルダに含まれているものを取り、Proguard を使用してこのように難読化しようとしています。
java -jar proguard.jar @proguard-project -verbose
私のProguardファイルは次のものです:
-injars in.jar -outjars out.jar
-libraryjars /home/jorider/wul4/adt-android/sdk/platforms/android-17/android.jar -libraryjars /home/jorider/wul4/adt-android/sdk/extras/android/support/v4/android-support -v4.jar -libraryjars commons-codec-repackaged-3.1-b36.jar -libraryjars httpmime-4.2.5.jar
-dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -verbose
-dontoptimize -dontpreverify
-keepattributes Annotation -keep public class com.google.vending.licensing.ILicensingService -keep public class com.android.vending.licensing.ILicensingService
-keepclasseswithmembernames クラス * { ネイティブ ; }
-keepclassmembers public class * extends android.view.View { void set*( *); ()を取得します。}
-keepclassmembers class * extends android.app.Activity { public void *(android.view.View); }
-keepclassmembers enum * { public static * [] values(); public static * valueOf(java.lang.String); }
-keep クラス * android.os.Parcelable を実装 { public static final android.os.Parcelable$Creator *; }
-keepclassmembers クラス * .R$ { public static ; }
-dontwarn android.support.**
コンソールで実行した結果は次のとおりです。
Shrinking...
java.io.IOException: The output jar is empty. Did you specify the proper '-keep' options?
誰でも理由を知っていますか?
どうもありがとう!