Androidプロジェクトをproguard.cfgでエクスポートすると、参照されているすべての.jarファイルも難読化されます。その.jarの一部を難読化から除外するにはどうすればよいですか?
Antスクリプトを編集したくない場合は、それらの外部jar内のクラスのproguard.cfgに-keepオプションを追加できます。例えば:
-keep class othercode.** { *; }
または、否定子を含む正規表現を使用する場合:
-keep class !mycode.** { *; }
ただし、標準のAntスクリプトは、参照されているすべてのjarを単一の出力jarにマージします。
構成ファイルで、jarを入力jarではなくライブラリjarとして設定します。これはそれらを手つかずのままにします。
-libjars <path/to/jars>
Proguardmavenプラグインを使用して私はそれをそのようにします
<inclusion>
<groupId>foo.bar</groupId>
<artifactId>foo-bar</artifactId>
<library>true</library>
<filter>!META-INF/**</filter>
</inclusion>
ザ・
<library>true</library>
難読化後、外部jarが最終jarにマージされます。ただし、これによりマニフェストが上書きされる可能性があります。私はまだそれを回避する最善の方法を理解していません。