51CTO博客已为您找到关于android 让dataclass混淆保留的相关内容,包含IT学习相关文档代码介绍、相关教程视频课程,以及android 让dataclass混淆保留问答内容。更多android 让dataclass混淆保留相关解答可以来51CTO博客参与分享和学习,帮助广大IT技术人实现成长和进步。
-keep public class com.google.vending.licensing.ILicensingService -keep public class com.android.vending.licensing.ILicensingService: 表示不混淆上述声明的两个类。 proguard中一共有三组六个keep关键字的含义 keep 保留类和类中的成员,防止它们被混淆或移除。 keepnames 保留类和类中的成员,防止它们被混淆,...
不难看出,我们一般在打 release 包时才启用混淆,因为混淆会增加额外的编译时间,所以不建议在 debug 模式下启用。此外,需要注意的是:只有在启用混淆的前提下开启资源压缩才会有效!以上代码中的 proguard-android.txt 表示 Android 系统为我们提供的默认混淆规则文件,而 proguard-rules.pro 则是我们想要自定义的混淆规则...
比如,我们通过@Keep修饰一个类来保留它不被混淆: @Keep data class CloudMusicBean(var createDate: String, var id: Long, var name: String, var url: String, val imgUrl: String) 同样地,我们也可以让@Keep来修饰方法或者字段进而保留它们。 其他命令 dontwarn-dontwarn命令一般在我们引入新的 library 时会...
第三方库所需的混淆规则。正规的第三方库一般都会在接入文档中写好所需混淆规则,使用时注意添加。 在运行时动态改变的代码,例如反射。比较典型的例子就是会与 json 相互转换的实体类。假如项目命名规范要求实体类都要放在model包下的话,可以添加类似这样的代码把所有实体类都保持住:-keep public class **.*Model*...
3. 保持不被混淆的设置 保持某个包下所有类不混淆 -keep class 你的实体类所在的包.** { *; } 四大组件、View体系等不混淆 -keep public class * extends android.app.Activity -keep public class * extends android.app.Application -keep public class * extends android.app.Fragment ...
# 包含有类名->混淆后类名的映射关系 -verbose # 指定不去忽略非公共库的类成员 -dontskipnonpubliclibraryclassmembers # 不做预校验,preverify是proguard的四个步骤之一,Android不需要preverify,去掉这一步能够加快混淆速度。 -dontpreverify # 保留Annotation不混淆 ...
#混淆时记录日志-verbose #不警告org.greenrobot.greendao.database包及其子包里面未应用的应用-dontwarn org.greenrobot.greendao.database.**-dontwarn rx.**-dontwarn org.codehaus.jackson.**...#保持jackson包以及其子包的类和类成员不被混淆-keepclassorg.codehaus.jackson.**{*;}#---重要说明---#-keep...
3. 混淆(Obfuscate):使用a、b、c、d这样简短而无意义的名称,对类、字段和方法进行重命名; 4. 预检(Preveirfy):在Java平台上对处理后的代码进行预检,确保加载的class文件是可执行的。 利用Proguard,对Dex2jar进行反编译处理后的Apk效果示例: 处理前
5、怎么混淆 → 主项目的build.gradle设置minifyEnabled true,proguard-rules.pro加入混淆规则; 6、混淆规则哪里来 → 网上搜索通用混淆模板复制粘贴,项目依赖到的第三方库官方文档复制粘贴; 大都止步于此,好一点的还知道下ProGuard听过R8,了解混淆配置语法,会自定义混淆规则。