proguardにクラス名を難読化したいと思います。私はProguard.cfgProguardにクラス名の難読化を指示する方法
-keepclasseswithmembers class * {
public static <fields>;
}
-keepnames class * implements java.io.Serializable
-keep public class com.google.**
にこのラインを持っていると私は何を難読化されていないが、クラス名であることに気づきます。したがって、jdguiを実行しています com/test/abcd/ActualClass.java public class ActualClassName extends Activityなど
また、実際のクラス名を返すメソッドがあります。
import com.abcd.ActualClassName
などのような
ActualClassname aa();
、輸入文はどのように私はProGuardのは、クラス名自体を難読化するのですか。それは私の見ているアクティビティだけではなく、私のアダプターは難読化されていません。まあ、難読化は進んでいますが、クラス名はありません。
上記のルールは、クラス名が難読化されないようにするものですか?
更新:私は以来、上記のルールを削除し、Androidから何も拡張しないユーティリティクラスは難読化されていません。私は今、アクティビティの派生クラスのように保持されているクラスから参照されるクラスのクラス名を保持する暗黙のルールがあるのだろうか?名前が難読化されていないクラスには、共通するものがいくつかあります。
1)静的メソッド 2)アクティビティまたは直列化可能なもののように保持されている他の型のインポート。 3)他のクラスのパラメータを持つメソッドがあります(そのうちのいくつかは保持する必要があります)。
ただし、これらのユーティリティクラスを保存する必要がある場所は特にありません。
。あなたはこの問題の解決策を見つけましたか? – lnreddy