源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Android实用图文教程之代码混淆、第三方平台加固加密、渠道分发

  • 时间:2021-12-14 04:05 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Android实用图文教程之代码混淆、第三方平台加固加密、渠道分发
[b]第一步:代码混淆(注意引入的第三方jar)[/b] 在新版本的ADT创建项目时,混码的文件不再是proguard.cfg,而是project.properties和proguard-project.txt。 新建一个项目的时候,会自动生成project.properties和proguard-project.txt文件,无需自己新建,如果你的项目无法自动生成,那么你就要检查一下你的ADT版本了 [img]http://files.jb51.net/file_images/article/201412/2014123011040528.jpg[/img] 如果需要对项目进行全局混码,只需要进行一步操作: 将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两个包 [img]http://files.jb51.net/file_images/article/201412/2014123011040529.jpg[/img] proguard-project.txt脚本编写规则:
[u]复制代码[/u] 代码如下:
#工程中含有第三方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.**
[b]第二步:导出apk(部分第三方加密平台需要导出签名的apk)[/b] 请根据第三方加密平台的要求导出apk,带签名的apk导出速度稍慢。右击项目选择 Android Tools再根据需求导出 [img]http://files.jb51.net/file_images/article/201412/2014123011040530.jpg[/img] [b]第三步:第三方平台加固(生成多渠道包)[/b] 现在比较流行的加密平台有: http://www.bangcle.com http://*** http://dev.360.cn/protect/welcome 如果你的项目里面包含了百度统计、友盟统计等功能,那么肯定需要了解不同应用商店的下载量,所以生成渠道包就很重要。这些平台都可以帮助生成多个去到apk 下图是使用“爱加密”平台,项目集成了友盟统计 [img]http://files.jb51.net/file_images/article/201412/2014123011040531.jpg[/img] 加固需要花费十几分钟的时候,加固完成后就能下载到不同渠道的包,但是没有签名,无法安装 [img]http://files.jb51.net/file_images/article/201412/2014123011040632.jpg[/img] [b]第四步:apk重新签名[/b] 加固后的apk是没有签名的,没有签名的apk是无法安装到手机里面的,需要使用签名工具重新签名 可以使用adt自带的,但是过于麻烦,建议使用第三方的签名工具 比如:爱加密提供的http://***/apply/Sign [img]http://files.jb51.net/file_images/article/201412/2014123011040633.jpg[/img]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部