Android studio使用コード混同
2314 ワード
いくつかのセキュリティ要件の高いアプリケーションでは、コード混同を使用する必要があります.android studioはこの機能をよく提供し、コードの混同を容易にすることができます.
1.build.grandleで追加します.ルールはproguard-rules.proに書かれています.eclipseでよく使われるproguard-project.txtなどのファイルをカスタマイズすることもできます.
2,proguard-rules.proに以下のコードを追加し、基本的にすべてをカバーすることができます.
1.build.grandleで追加します.ルールはproguard-rules.proに書かれています.eclipseでよく使われるproguard-project.txtなどのファイルをカスタマイズすることもできます.
buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled true
proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘
}
}
2,proguard-rules.proに以下のコードを追加し、基本的にすべてをカバーすることができます.
-optimizationpasses 5 #
-dontusemixedcaseclassnames #
-dontpreverify #
-verbose #
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/* #
-keep public class * extends android.app.Activity #
-keep public class * extends android.app.Application #
-keep public class * extends android.app.Service #
-keep public class * extends android.content.BroadcastReceiver #
-keep public class * extends android.content.ContentProvider #
-keep public class * extends android.app.backup.BackupAgentHelper #
-keep public class * extends android.preference.Preference #
-keep public class com.android.vending.licensing.ILicensingService #
-keepclasseswithmembernames class * { # native
native <methods>;
}
-keepclasseswithmembers class * { #
public <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembers class * {#
public <init>(android.content.Context, android.util.AttributeSet, int);
}
-keepclassmembers class * extends android.app.Activity { #
public void *(android.view.View);
}
-keepclassmembers enum * { # enum
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keep class * implements android.os.Parcelable { # Parcelable
public static final android.os.Parcelable$Creator *;
}