Android实用图文教程之代码混淆、第三方平台加固加密、渠道分发
第一步:代码混淆(注意引入的第三方jar)
在新版本的ADT创建项目时,混码的文件不再是proguard.cfg,而是project.properties和proguard-project.txt。
新建一个项目的时候,会自动生成project.properties和proguard-project.txt文件,无需自己新建,如果你的项目无法自动生成,那么你就要检查一下你的ADT版本了

如果需要对项目进行全局混码,只需要进行一步操作:
将project.properties的中
“#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt”的“#”去掉就可以了。
如果有一些代码不能被混淆,比如需要加入了so文件,需要调用里面的方法,那么调用JNI访问so文件的方法就不能被混码。在导出的时候,可能不会报错。但是在手机上运行的时候,需要调用so文件的时候,就会报某某方法无法找到。这个时候就需要用到proguard-project.txt。
在新版本的代码混淆,已经变得很智能,不过引入的第三方jar还是需要手动编写混淆规则
案例:引入了BaiduLBS_Android.jar,android-support-v4.jar两个包

proguard-project.txt脚本编写规则:
#工程中含有第三方jar包
-libraryjars libs/android-support-v4.jar
-libraryjars libs/BaiduLBS_Android.jar
#项目里面包含的包也不能混淆
-keep class com.baidu.** {*;}
-dontwarn com.baidu.**
-keep class vi.com.gdi.bgl.android.java.** {*;}
-dontwarn vi.com.gdi.bgl.android.java.**
-keep class android.** {*;}
-dontwarn android.**
第二步:导出apk(部分第三方加密平台需要导出签名的apk)
请根据第三方加密平台的要求导出apk,带签名的apk导出速度稍慢。右击项目选择 Android Tools再根据需求导出

第三步:第三方平台加固(生成多渠道包)
现在比较流行的加密平台有:
http://www.bangcle.com
http://***
http://dev.360.cn/protect/welcome
如果你的项目里面包含了百度统计、友盟统计等功能,那么肯定需要了解不同应用商店的下载量,所以生成渠道包就很重要。这些平台都可以帮助生成多个去到apk
下图是使用“爱加密”平台,项目集成了友盟统计

加固需要花费十几分钟的时候,加固完成后就能下载到不同渠道的包,但是没有签名,无法安装

第四步:apk重新签名
加固后的apk是没有签名的,没有签名的apk是无法安装到手机里面的,需要使用签名工具重新签名
可以使用adt自带的,但是过于麻烦,建议使用第三方的签名工具
比如:爱加密提供的http://***/apply/Sign

相关文章
android自定义popupwindow仿微信右上角弹出菜单效果
这篇文章主要为大家详细介绍了android自定义popupwindow仿微信右上角弹出菜单效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2016-11-11
Golang+Android基于HttpURLConnection实现的文件上传功能示例
这篇文章主要介绍了Golang+Android基于HttpURLConnection实现的文件上传功能,结合具体实例形式分析了Android基于HttpURLConnection的客户端结合Go语言服务器端实现文件上传功能的操作技巧,需要的朋友可以参考下2017-03-03
Android利用ViewDragHelper轻松实现拼图游戏的示例
本篇文章主要介绍了Android利用ViewDragHelper轻松实现拼图游戏的示例,非常具有实用价值,需要的朋友可以参考下2017-11-11
Android RecyclerView实现吸顶动态效果流程分析
RecyclerView是Android一个更强大的控件,其不仅可以实现和ListView同样的效果,还有优化了ListView中的各种不足。其可以实现数据纵向滚动,也可以实现横向滚动(ListView做不到横向滚动)。接下来讲解RecyclerView的用法2022-12-12
Android9.0 SystemUI 网络信号栏定制修改的流程解析
这篇文章主要介绍了Android9.0 SystemUI 网络信号栏定制修改的流程,本文通过图文实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-11-11
Android自定义TextView实现文字图片居中显示的方法
下面小编就为大家分享一篇Android自定义TextView实现文字图片居中显示的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-01-01
使用android studio导入模块的两种方法(超详细)
这篇文章主要介绍了使用android studio导入模块的两种方法,本文通过图文并茂的形式给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2018-09-09


最新评论