Android Studio如何混淆

为什么要混淆

了解安卓程序编译的会知道 其实我们的apk并不是很安全,从apk从可以解包出,步骤:

  1. 将apk文件改成zip结尾 然后解压zip 然后就会发现里面有一个classes.dex

  2. dex2jar 这个工具将dex文件转成jar 下载地址:http://sourceforge.net/projects/dex2jar/files/ 用这个工具的命令 转jar

    d2j-dex2jar classes.dex

  3. jd-gui 这个工具用于将jar转成java代码 下载地址:http://jd.benow.ca/ 用这个工具打开classes-dex2jar.jar

因此最简单的就是把java混淆了,让别人看不懂

AS里面配置混淆

配置混淆

在build.gradle里面配置

release {minifyEnabled true //用于设置是否启用混淆 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}

打包后解出来的jar:

配置混淆规则

-dontusemixedcaseclassnames 表示混淆时不使用大小写混合类名。-dontskipnonpubliclibraryclasses 表示不跳过library中的非public的类。-verbose 表示打印混淆的详细信息。-dontoptimize 表示不进行优化,建议使用此选项,因为根据proguard-android-optimize.txt中的描述,优化可能会造成一些潜在风险,不能保证在所有版本的Dalvik上都正常运行。-dontpreverify 表示不进行预校验。这个预校验是作用在Java平台上的,Android平台上不需要这项功能,去掉之后还可以加快混淆速度。-keepattributes *Annotation* 表示对注解中的参数进行保留。-keep public class com.google.vending.licensing.ILicensingService
-keep public class com.android.vending.licensing.ILicensingService
上面两行表示不混淆上述两个类-keep class com.tencent.wns.config.ConfigManager {*;}
上面一行表示不混淆这整个类

个人简介:高级开发工程师,兴趣和领域(Unity、Unreal、cocos creator、安卓终端开发、ios终端开发、音视频开发、图形学),欢迎加W:wlxklyh 探讨问题。(欢迎star:https://github.com/wlxklyh/SoftRenderer)

文件不混淆_Android Studio配置反混淆相关推荐

  1. android php 项目代码混淆,Android Studio配置反混淆的实现

    Android Studio如何混淆 为什么要混淆 了解安卓程序编译的会知道 其实我们的apk并不是很安全,从apk从可以解包出,步骤: 将apk文件改成zip结尾 然后解压zip 然后就会发现里面有 ...

  2. eclipse java混淆打包_Android Studio和eclipse混淆打包总结

    考虑到以前的项目没有做过混淆,只是用了加固软件进行加固,为了安全性,准备给项目加上,这里做个总结,都经本人亲自在项目实践,说是为了安全性,这好像说大了,一来项目中没用到什么特别的技术,二是大神真要弄你 ...

  3. 安卓逆向代码反混淆 Simplify工具 JEB2反混淆神器

    [技术分享]Android程序反混淆利器--Simplify工具 https://www.anquanke.com/post/id/85388 发布时间:2017-01-23 17:21:23 问题背 ...

  4. js反混淆还原工具_SATURN反混淆框架

    本文为看雪论坛精华文章 看雪论坛作者ID:梦野间 摘要:近几年,软件的混淆强度一直在不断提升.基于编译器的混淆已经成为业界事实上的标准,最近的一些论文也表明软件的保护方式使用的是编译器级别的混淆. 在 ...

  5. android so文件不混淆_Android studio 混淆打包时如何忽略依赖库中的第三方.so文件...

    如题,今天在打包项目的时候各种报错,在debug的时候没有任何问题,那么很快定位到问题所在---第三方.so文件混淆出问题了.... 项目是在AS中编译的一个module,依赖了一个以前在Eclips ...

  6. android 子module混淆_Android 多模块打包混淆填坑记

    最近有个 sdk 的项目使用了多模块(Module)开发,然后提供 jar 包给接入者使用,要求大部分类是混淆过的,保留几个接口, Android Studio 能够导出 aar 文件,对于导出 ja ...

  7. as模拟器文件夹路径,Android Studio 配置模拟器AVD存放路径(默认在c盘,解决c盘空间不够问题)...

    Android Studio 安装之后,默认的会给我们创建一个 Nexus 的模拟器, 这个模拟器的镜像文件放在了 C:\Users\Administrator\.android  中 其中的avd文 ...

  8. c/c++反混淆方法

    deobfuscation 记需要反混淆的函数为output=obf-function(input). 反混淆的思路,首先标记输入的变量记为input-symbol,通过Taint跟踪改变量的流向,并 ...

  9. 由浅至深 谈谈.NET混淆原理 (四) -- 反混淆(原理 + 工具篇)

    1.        名称混淆 - 反混淆 名称混淆返混淆,基本上是不太可能的事,因为以前的名称已经换掉了,也没有第二个名称备份表,所以根本无法还换. 不过,可以把不可见字符转换为可见字符,长字符串换成 ...

最新文章

  1. 独家 | R语言中K邻近算法的初学者指南:从菜鸟到大神(附代码&链接)
  2. 图形处理(一)离散指数映射参数化-Siggraph 2006
  3. 十、Docker快速搭建Elastic Stack(下篇)
  4. 【新功能】媒体处理MPS全新支持自适应多码率、多语言音轨
  5. mysql查看表描述_MySQL表记录操作介绍(重点介绍查询操作)
  6. RabbitMQ(六) Routing路由模式
  7. 开学到现在,宿舍一直处于断网状态,总认为背后有些阴谋。。。
  8. 提高C#编程水平的50个要诀
  9. TigerGraph集群安装
  10. 从智能门锁,看3D视觉的安全性突围
  11. ReviewBoard代码评审实践总结
  12. 购买了正版的supermemo 15,花了60$
  13. sci结构及写作顺序
  14. 【模电】0014 运放自激振荡和消除(补偿)
  15. Doc2Vec模型的介绍与gensim中Doc2Vec的使用
  16. [XCode] XCode 6 中修改模拟器版本
  17. 【磁力链接】专用链接双向转化
  18. == 和 equals 的区别
  19. 2021冬-不靠谱的老板-visa信用卡白paio两台服务器
  20. 云服务器和共享主机,共享虚拟主机、独享虚拟主机还是云服务器?

热门文章

  1. [云炬商业计划书阅读分享]无水洗车业 发展前景好
  2. [云炬python3玩转机器学习笔记] 2-5机器学习相关的哲学思考
  3. python 中map()和lamda的简单实用
  4. 实验室服务器18.04LTS+RTX2080Ti+CUDA10.0+CUDAnn7.4+tf1.13装机之路
  5. tsp遗传算法 c语言,【分享】遗传算法解决TSP问题的源程序
  6. 三维空间几何变换原理[平移、旋转、错切]
  7. 加快vs2010的启动速度
  8. spcomm控件的使用
  9. setTimeout() 方法的返回值
  10. 23种设计模式C++源码与UML实现--单例模式中的饿汉模式和懒汉模式