android studio .so混淆配置,Android Studio 下混淆 文件配置 有关问题 初探(一)
Android Studio 下混淆 文件配置 问题 初探(一)
1.参考资料 https://stuff.mit.edu/afs/sipb/project/android/sdk/android-sdk-linux/tools/proguard/docs/index.html 官方文档及网上博客 最近的项目总结
2. Android Studio(以后简称AS) 下默认有proguard-project.txt ,为混淆的配置文件 配置路径在该工程下的gradel中。实际为一个 proguard
3混淆对象 proguard默认是所有文件均进行混淆
在下列情况一般不进行混淆 :
a 四大组件、support包(一般v4、v7)
b 资源文件、r文件
c js调用
d 反射和调用反射的类
e jni调用
f so库、jar包(一般来说已经进行了混淆)
4.基本语法 由于网上资料均 省略这一部分 本文给出重要部分:
a. 通配符 与java类似 *-》代表匹配所有字符 **表示该包类所有类及其子路径的类
b. 如果保持一个类不混淆-keep class 类名 {*;} 类名是全名(包含包名)
c. 保持一个类的子类不被混淆 -keep * extends 类名 { *;} 跟java很像是不是?
e. 保持一个类的单个方法不变 -keepclassmembers class 类名 {可含有通配符的方法名}
f. 保持含有某个方法的类不被混淆 -keepclasseswithmembers class 类名 {可含有通配符的方法名}
详见https://stuff.mit.edu/afs/sipb/project/android/sdk/android-sdk-linux/tools/proguard/docs/index.html#manual/usage.html
5 其他
a.optimize是否采用算法进行压缩
b. shrink是否删除unused(未使用文件)这个要小心如反射等
c-libraryjars为导入的jar包、so库 (只是导入) gradel有些已经配置 就会报一个 ....twice
的错
d 关闭混淆 dontobfuscate
ps :开启混淆 在build.gradel 中开启:buildTypes --》release--》 minifyEnabled
true
版权声明:本文为博主原创文章,未经博主允许不得转载。
android studio .so混淆配置,Android Studio 下混淆 文件配置 有关问题 初探(一)相关推荐
- 21天Jmeter打卡Day11配置元件之CSV数据文件配置
21天Jmeter打卡Day11配置元件之CSV数据文件配置 添加CSV Data Set Config CSV数据文件配置 CSV文件 设置变量引用 可以看到读取到了数据,但是为什么只读取了第二行的 ...
- 【Android 安全】使用 360 加固宝加固应用 ( 购买高级加固服务 | 设置资源加固 | 设置 SO 文件保护配置 | 设置 SO 防盗用文件配置 | 反编译验证加固效果 )
文章目录 一. 购买加固服务 二. 设置资源加固 三. 设置 SO 文件保护配置 四. 设置 SO 防盗用文件配置 五. 反编译验证加固效果 本博客用于记录下 360 加固保 加固应用流程 ; ( 上 ...
- linux下ssh文件配置,允许root远程用密码登录
一 ssh目录下文件介绍 ssh_config : 是客户端文件配置 sshd_config : 是服务端配置文件 1,修改root允许远用程密码登录 # vim /etc/ssh/sshd ...
- 虚拟机服务器桥接网络配置,虚拟机Vmware下CentOS6.5配置Bridged桥接方式上网及远程登录...
一.前言 VMware配置linux上网有三种方式,分别为bridge.NAT.Host,详情说明见redhat相关配置页,这边将详细的配置步骤进行截图说明,修改ssh服务默认端口22,映射到公网以便 ...
- yml配置oracle连接,springboot yml 文件配置oracle,提示账号密码错误
最近使用Spring boot,本来一直连接的是mysql数据库,一直没问题.昨天在更换了oracle数据库后,一直提示账号密码不正确,登录被拒绝.检查多次,检查账号密码一切正常,但就是连接不上ora ...
- nhibernate访问mysql配置_NHibernate各种数据库连接参数文件配置方法说明
/NHibernate各种数据库连接参数文件配置方法说明 //配置文件Config/Hibernate.cfg.xml内容如下所示: NHibernate.Driver.SqlClientDriver ...
- Tomcat免安装版的环境变量配置以及Eclipse下的Tomcat配置和测试
Tomcat是目前比较流行的开源且免费的Web应用服务器,在我的电脑上第一次安装Tomcat,再经过网上教程和自己的摸索后,将这个过程 重新记录下来,以便以后如果忘记了可以随时查看. 注意:首先要明确 ...
- 计算机用户怎么配置漫游,Windows下漫游用户配置和强制漫游用户配置详细过程...
实验环境: 1. 两台虚拟pc,pcA为winServer2003,pcB为winXP: 2.在winServer上通过dcpromo命令搭建域环境: 3.网段:pcA:192.168.1.1 pcB ...
- 火狐配置文件linux,驯服火狐:Linux下Firefox文件配置技巧
配置文件夹 在开始配置您的文件之前,您应当知道怎么找到通常称为"配置文件夹".配置文件夹是位于您硬盘中某处,供 Mozilla Firefox 存放您的所有个人设置的地方.. 在W ...
- Linux 清除网络配置,在Linux下清除路由配置
在日常操作和维护操作中,您经常会遇到路由表操作. 让我们整理一下Linux操作和维护中的路由操作: -------------------------------------------------- ...
最新文章
- 永恒之蓝漏洞原理 445_新代码漏洞“永恒之黑”该如何警惕?
- Ubuntu下安装Qt全部过程
- 从字节码角度解释i++和++i
- ADOQuery 查询 删除 修改 插入
- CCNA——网络初认识
- shell 分割字符串_谈一谈Shell中的贪婪匹配和非贪婪匹配
- mysql临键锁_详解 MySql InnoDB 中的三种行锁(记录锁、间隙锁与临键锁)
- 解决 git branch -a 无法全部显示远程的分支,只显示master分支
- linux db2v9.7卸载,db2 卸载和安装
- Ajax无刷新评论的PHP代码,PHP Ajax实现页面无刷新发表评论
- facebook是什么
- 点我—— ASP.NETCORE 安装CentOS
- 在html中字怎么修改位置,css怎么设置字体位置?
- 多线程面试题_线程魔术技巧:使用Java线程可以做的5件事
- css样式 向下补白,div+css[3]:css中边框border与补白padding属性设置
- 什么是Watchdog?
- 自己写php木马,自己写的php木马webshell扫描器
- 支付宝 自动发货 php,Ecshop实现支付宝自动发货功能
- windows服务器设置文件属性设置去掉隐藏已知文件类型的扩展名(即文件后缀名可见)
- lnmp 配置nginx 实现内网/本地域名
热门文章
- Visual Studio Code常用快捷键
- kettle将文件路径定义为_kettle_步骤解释
- 【数据结构-排序】1. 图解插入排序三种实现(插入排序/折半排序/希尔排序)
- 遇到MapStruct后,再也不手写PO,DTO,VO对象之间的转换了
- com.mysql.jdbc.PacketTooBigException: Packet for query is too large
- 蓝桥杯-5-1最小公倍数(java)
- JSP的3大指令Page,include,taglib
- Java之反射代码演示说明
- 网络编程1之计算机网络及参考模型、域名、服务器
- [转]inux Kernel部分选项意义