Android Studio实现代码混淆
来源:互联网 发布:手机扫描条形码软件 编辑:程序博客网 时间:2024/05/22 00:45
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 *;}
3,通过 Android Studio进行 混淆代码时,默认已经将 lib目录中的 jar 都已经添加到打包脚本中,所以不需要再次手动添加,否则会出现“ java.io.IOException: The same input jar is specified twice” 错误。4.第三方需要到第三方官网寻找不能混淆的类.
阅读全文
1 0
- Android Studio实现代码混淆
- Android studio 实现混淆代码
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android Studio实现代码混淆 配置详解
- Hibernate之多对多双向关联(比较少用)
- 选择排序
- 史上最全最强SpringMVC详细示例实战教程
- 次短路模板
- HDU 4333 Revolving Digits extkmp
- Android Studio实现代码混淆
- windows系统中,虚拟内存是什么?为什么要关闭虚拟内存?
- Unity和Android的交互——Toast实现
- double转换为json,当为空的时候自动赋值0.0;
- 使用Sqlite时有哪些可以优化的地方
- CSDN的博客搜索功能太弱,教你怎么搜索自己博客的文章
- iFunk品牌影响力不断攀升
- python 学习路线
- 常用的 wget 参数详解