Android:我想创建非常安全的代码

时间:2016-02-10 04:21:43

标签: android listview android-fragments android-intent android-proguard

我的问题是在android中开发一个应用程序,所以同时我想创建安全性很好的代码,我在Play商店上传APK如何使用Proguard混淆我的代码,我需要混淆类名,库,id和Proguard的基本功能。

请帮助我在Play商店中保护我的代码安全吗?

1 个答案:

答案 0 :(得分:2)

在模块应用程序文件中的build.gradle文件中添加这些行,而不是项目文件

buildTypes {
    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'),
                'proguard-rules.pro'
    }
    debug {
        minifyEnabled false
    }
}

在proguard-rules.pro文件中添加以下行

-dontwarn com.android.volley.toolbox.**
-keep class org.codehaus.** { *; }
-dontwarn android.support.v7.**
-keep android.support.v7.**
-dontwarn android.support.**
-keepattributes **
-keepattributes   Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,*Annotation*,EnclosingMethod


-keep class android.support.v4.app.** { *; }
-keep interface android.support.v4.app.** { *; }
-keep class android.support.v7.app.** { *; }
-keep interface android.support.v7.app.** { *; }
-keep class android.support.v13.app.** { *; }
-keep interface android.support.v13.app.** { *; }
-dontwarn android.support.design.**
-keep class android.support.design.** { *; }
-keep interface android.support.design.** { *; }
-keep public class android.support.design.R$* { *; }
-dontwarn org.apache.http.**
-dontwarn com.mixpanel.**
-dontwarn org.codehaus.jackson.**
-dontwarn org.acra.ErrorReporter.**
-dontwarn com.jeremyfeinstein.slidingmenu.**
-keepnames class com.fasterxml.jackson.** { *; }
-keepclassmembers public final enum     

请注意不要忘记在proguard规则中添加外部库,否则应用程序将崩溃,您将获得NoClassDefFoundError异常