android 代码混淆
2013-06-07 15:39
211 查看
学习笔记之代码混淆
作者:皇马船长更新于 05月31日 09:30访问(168)评论(5)
1、为什么做代码混淆?
apk文件可以通过反编译得到应用的源码,如果我们不对代码做混淆,那么别人很轻松就能拿到我们辛辛苦苦做出的成果,所以才有了代码混淆,这样可以把类名、方法名、包名改成随意字母命名的如aa 、bb等,这样能提高我们代码的安全性
2、代码混淆怎么做 ?
其实google已经为我们做了很多工作,我们要做的就很简单了。步骤如下:2.1 新建应用,我的这个是2.2的,由于手头有混淆需要的两个文件,所以只需把default.properties、proguard.cfg拷到项目的根目录下。然后在工程描述文件default.properties 文件 和 project.properties中添加一句代码:**proguard.config=proguard.cfg** 加到最后。
以下是截图
这样我们再生产apk文件后,反编译出的代码就是混淆过的了,这样的代码看起来是很头疼的,我们的代码也就安全了。
混淆后效果:
3、代码混淆也是有一定的原则
如果一些提供给外部的类、方法、变量等名字被改变了,那么程序本身的功能就无法正常实现,Activity、Application、Service、BroadcastReceiver、ContentProvider、BackupAgentHelper、Preference和ILicensingService的子类。因为这些子类,都是可能被外部调用的,所以不会改变;另外,它还保留了含有native方法的类、构造函数从xml构造的类(一般为View的子类)、枚举类型中的values和valueOf静态方法、继承Parcelable的跨进程数据类。
在实际的一个工程项目中,可能Google自动生成的配置不能胜任我们的混淆工作。所以,我们往往需要自己编写一些ProGuard配置。这方面的资料在官网的Manual -> Usage里有详细说明。大家可以研究一下。
疑问: 网上很多人说Android2.3后的工程下都会自动生成default.properties、proguard.cfg 这两个文件, 但是我的怎么没有啊?每次都得手动添加
声明:eoe文章著作权属于作者,受法律保护,转载时请务必以超链接形式附带如下信息原文作者: 皇马船长
原文地址: http://my.eoe.cn/cainiao1/archive/4319.html
相关文章推荐
- Android 混淆代码总结
- AndroidStudio代码混淆应用加固模板
- android程序的代码混淆打包
- Android 混淆代码总结
- android混淆代码
- Android代码混淆
- Android 项目代码混淆
- Android代码混淆常见配置
- Android 混淆代码(2)
- Android 混淆代码 知识~
- 【转】Android 中提高代码安全性-混淆代码
- android代码签名和混淆打包
- android 代码混淆
- android中使用代码混淆出现Conversion to Dalvik format failed with error 1错误的解决办法
- Android代码混淆前后分析
- Android代码混淆
- Android 代码混淆
- Android代码混淆导致内部类不可用
- Android 代码混淆
- Android代码混淆工具Proguard学习