Android代码混淆需注意的事项2015-01-05 21:28:03

( 2人已投票,[高质量] )
分享: ╬收藏
31.3K

为了加强对软件的保护,重点防御反编译,需要对代码进行混淆处理

结果是类方法名变为a b c等无意义字母


2.3以后工程会自动生成两个文件

1 Project.properties

这是一个配置文件,需要将那句注释解开放到target-10下面去

target=android-10

proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt

2 proguard-project.txt

这就是一个配置文件,其中配置哪些类可保持,例如extents activity的所有类不混淆

-keep  就是保持意思,还有好多的语法

对于引入的jar so不可混淆,会提示找不到类,需特殊处理

下为一例proguard-project.txt内容

说明:需要添加为签名(sign)apk才能混淆

以下为其中一简单用例,希望举一返三哦


-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-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 com.android.vending.licensing.ILicensingService
-keepclasseswithmembernames class * {
  native <methods>;
}
-keepclasseswithmembers class * {
  public <init>(android.content.Context, android.util.AttributeSet);
}
-keepclassmembernames enum * {
  public static **[] values();
  public static ** valueOf(java.lang.String);
}
-keep class * implements android.os.Parcelable {
 public static final android.os.Parcelable$Creator *;
}







头像

snowcoal
  • android
  • 代码混淆

本文标签:

android代码混淆

收藏到我的私密空间

标题:Android代码混淆需注意的事项

作者:柳岸花明

你暂未登录,请登录后才可收藏至您的私密空间 确认取消
雪炭网

键盘操作 更便捷 -雪炭网雪中送炭-乐趣无限