代码混淆步骤:

1,project.properties中打开代码混淆功能proguard.config=proguard.cfg

2,编辑proguard.cfg文件,内容如下

-optimizationpasses 5-dontusemixedcaseclassnames-dontskipnonpubliclibraryclasses-dontpreverify-verbose-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*-ignorewarnings-libraryjars libs/android-support-v4.jar-dontwarn android.support.v4.**    -keep class android.support.v4.** { *; }  -keep interface android.support.v4.app.** { *; }  -keep public class * extends android.support.v4.**  -keep public class * extends android.app.Fragment-libraryjars libs/asmack.jar-libraryjars libs/aws-android-sdk-1.7.1.1-core.jar-libraryjars libs/aws-android-sdk-1.7.1.1-s3.jar-libraryjars libs/LibFrameWidget.jar-libraryjars libs/LibFramework.jar-libraryjars libs/locSDK_4.0.jar-libraryjars libs/umeng_sdk.jar-libraryjars libs/zxing-core.jar-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 com.android.vending.licensing.ILicensingService-keepclasseswithmembernames class * {    native <methods>;}-keepclasseswithmembernames class * {    public <init>(android.content.Context, android.util.AttributeSet);}-keepclasseswithmembernames class * {    public <init>(android.content.Context, android.util.AttributeSet, int);}-keepclassmembers enum * {    public static **[] values();    public static ** valueOf(java.lang.String);}-keep class * implements android.os.Parcelable {  public static final android.os.Parcelable$Creator *;}

应该注意的地方如下:

1,android-support-v4.jar报错的话,要加上下面的代码

-ignorewarnings

-dontwarn android.support.v4.**
-keep class android.support.v4.** { *; }
-keep interface android.support.v4.app.** { *; }
-keep public class * extends android.support.v4.**
-keep public class * extends android.app.Fragment

2,所有的*.jar包都要加上

-libraryjars libs/*.jar

3,混淆代码除了可以更安全还有一个好处是:你的APK文件变得更小,大概为混淆之前的1/2吧。

更多相关文章

  1. Android(安卓)apk下载 安装 卸载 打开
  2. Android(安卓)代码里设置ImageView的src和background
  3. Android架构分析之JNI
  4. android ORM 关系映射 ormLite
  5. Android(安卓)定制万能Adapter
  6. android 状态栏占位_Android(安卓)Studio 全屏沉浸式透明状态栏
  7. Android简单文件浏览器源代码
  8. android 广播传参数
  9. android 获取设备真实ip地址

随机推荐

  1. android studio 3.0 升级 项目遇到的问题
  2. Android之SharedPreferences管理类AppPre
  3. android中启动服务
  4. Android(安卓)sqlite 数据库在java代码中
  5. Uploading audio, video or image files
  6. Android(安卓)加密解密字符串
  7. android Fragment
  8. 封装Android的AsyncHttpClient请求工具
  9. Android(安卓)使用FTP上传文件
  10. Android学习进阶路线导航线路(Android源