Android Studio 开启配置混淆功能可能遇到的问题以及解决思路

前言:

这篇文章是本月发表的第三篇了。这个月说实在是比较没那么忙,所以就将开发中遇到的一些问题都给整理成博客。发出来给大家共享!也是自己实在记性差,需要写成博客

也避免自己忘记了。

正文:

那我们就直接开始吧,还是老样子,直接上图、上代码。

  • 第一步:在 build.gradle 文件下开始混淆功能

    buildTypes {
        debug {
            signingConfig signingConfigs.debug
            //这个的混淆文件的配置文件
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            //开启混淆功能,true or false 
            minifyEnabled true
            //开启删除无用的资源
            shrinkResources true

        }

        release {
            signingConfig signingConfigs.release
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            debuggable false
            shrinkResources true
        }
    }

  • 第二步:在混淆配置文件中 进行以下配置
#---------------------------------基本指令区----------------------------------    
#指定代码的压缩级别    
-optimizationpasses 5    
 #预校验    
-dontpreverify    
-printmapping proguardMapping.txt    
# 指定混淆时采用的算法,后面的参数是一个过滤器    
-optimizations !code/simplification/cast,!field/*,!class/merging/*    
#保护注解    
-keepattributes *Annotation*,InnerClasses    
-keep class * extends java.lang.annotation.Annotation { *; }    
#避免混淆泛型    
-keepattributes Signature    
-keepattributes SourceFile,LineNumberTable    
    
 #混淆时是否记录日志    
-verbose    
#包明不混合大小写    
-dontusemixedcaseclassnames    
#优化  不优化输入的类文件    
-dontoptimize    
#---------------------------------默认保留区---------------------------------    
#继承activity,application,service,broadcastReceiver,contentprovider....不进行混淆    
#-keep public class * extends android.app.Activity    
-keep public class * extends android.app.Application    
-keep public class * extends android.support.multidex.MultiDexApplication    
-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 * extends android.view.View    
    
-keep public class com.android.vending.licensing.ILicensingService    
-keep class android.support.** {*
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WL-鬼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值