私は今Proguardを勉強していますが、感嘆符と混同しています!ProGuardではクラスパスの前に感嘆符ができますか?
-keepクラス!android.support.v7.view.menuのように、クラスパスの前に設定します。 {*;} **
これは "!"行う?それはプロゴードがこのクラスを守らないことを意味しますか?プロゴアードがすべてのクラスを難読化するので、なぜそれが必要なのですか?
私は今Proguardを勉強していますが、感嘆符と混同しています!ProGuardではクラスパスの前に感嘆符ができますか?
-keepクラス!android.support.v7.view.menuのように、クラスパスの前に設定します。 {*;} **
これは "!"行う?それはプロゴードがこのクラスを守らないことを意味しますか?プロゴアードがすべてのクラスを難読化するので、なぜそれが必要なのですか?
それは同じことを意味します!他の多くのプログラミング言語を意味します。次の選択を否定します。したがって、あなたの例では、keepディレクティブは、でなく、のパッケージ/クラスのすべての項目に適用されます。
ダグに感謝します。私の設定ファイルに何も保存していないと、すべてのクラスを難読化することになります。 – Qing
ProGuardは可能な限り難読化しようとします。しかし、少なくともあなたのプロジェクトにはデフォルトのAndroidルールがあるべきです。そうしないと、おそらく難読化の後に動作しません。 –
ありがとう、最後の1つの質問、私はこのルールを持っています1.クラスkeep!android.support.v7.view.menu ** {*;}このパッケージのMenuBuilderクラスを難読化しますが、私はルールのこの行を追加した後#キーインターフェイスandroid.support.v7。** {*; }、MenuBuilderクラスは難読化されていませんが、ここでは矛盾がありません。もう少し説明してもらえますか?ありがとうございます – Qing
http://proguard.sourceforge.net/manual/usage.html#keepoptions –