私はあなたがcom.foo.bar
パッケージ(+サブパッケージ?)にすべてを残したいと思っています。あなたは、次のルールでこれを達成することができます
-keep class com.foo.bar.** { *; }
あなただけの代わりに*
を使用し、現在のパッケージにしたい場合は**
パターンは、また、サブパッケージにマッチします。あなたはこのようなルールを使用している場合
:
-keep class !com.foo.** { *; }
あなたが実際にcom.foo以外のすべてを維持します**、あなたは除外パターンに注意する必要がありますので。後で必ず少なくとも1つの包含パターンを必ず含めてください。除外パターンは、包含パターンとしてより具体的でなければなりません。以下を参照してください。
ProGuardのは、それが一致するものを見つけたら、ルールの評価を停止しますので、このルールは、(それをテストした)正しく解析する必要がありますが、動作しません。
-keep class !com.foo.**, com.foo.bar.** { *; }
除外パターン!com.foo.**
がCOMのすべてと一致します。 fooとサブパッケージの間にあるので、com.foo.barにもマッチします。
私に明確にさせてください。私はcom.foo。*の下にある以外はすべてのクラスを保持したい。また、com.foo.bar。*も保持する必要があります。 – wooohoh
結局、私は** com.foo。***を除外して** obsfucateしたいです** *** – wooohoh