360加固+美团walle多渠道自动化打包

背景介绍

为了防止安卓应用程序被恶意破解,植入黑客病毒或修改代码用于商业竞争等,对应用程序进行加固必不可少。接下來,本篇文章会主要讲加固的过程以及一些注意事项。

前期准备

首先,了解一下何为加固,加固的原理是怎样的,这有利于后面分析问题。

简单来说,加固就是对源Apk进行加密,然后再套上一层壳。用加密算法对源Apk进行加密,再将壳Apk进行合并得到新的Dex文件,最后替换壳程序中的dex文件得到新的Apk,这个新的Apk已经不是一个完整意义上的Apk程序了,它的主要工作是负责解密源Apk,然后加载Apk,让其正常运行起来。

目前,各大互联网公司都会自己的应用程序进行加固保护,像360公司,腾讯都有对外开放自己的服务。另外,市场上还有一些专门加固的产品,比如爱加密和梆梆加固等。好好利用这些“轮子”,专注于业务开发,來提高工作效率。

加固工具的选择:此次使用的是360加固

第一,从调研加固结果可见,360加固在兼容性、启动速度、体积变化上都占有优势,整体上加固效果比较好;

第二,360公司是一家安全起家的公司,在业界的影响力也很大,加固技术还是值得信赖的!

第三,看了很多加固工具的官网,加固的过程都是上传签名的APK包到官网页面或使用相应的桌面程序进行上传,这个过程需要人工进行上传,而360加固提供了一个加固工具包,我们可以编写脚本來调用其中的加固程序进行自动化加固。现在很多公司都是用Jenkins线上自动化打包,加固也是打包过程的一部分,最好也能是自动化的,这样整个打包流程是“一条龙”,没有人工干预,相当于在黑匣子中进行,程序员不用关心打包过程,也减少人工成本和出错几率。

期望目标

使用gradle脚本实现自动化加固和多渠道打包

实现

整个过程分成三个步骤:加固——重签名——多渠道打包

加固

加固过程:
浏览了360加固官网,整个加固过程其实很简单,主要有以下的三个步骤:

1)输入360加固平台的帐号、密码

2)将签名文件上传到加固平台

3)上传需要加固的apk文件进行加固

关键加固命令行代码如下:

commandLine "{命令执行符号}", "-c" ,"java -jar {加固jar包的位置} -login {360加固平台帐号} {360加固平台密码}"
commandLine "{命令执行符号}", "-c" ,"java -jar {加固jar包的位置} -importsign {签名文件的位置} {签名文件存储的密码} {alias别名} {alias密码}"
commandLine "{命令执行符号}", "-c" ,"java -jar {加固jar包的位置} -jiagu {所要加固的apk文件路径} {加固后的apk输出路径} -autosign"

说明:

1)系统环境不同,命令执行符号也会不同(Linux系统:sh ;Mac系统:bash ;windows系统:powershell);

2)第二行上传签名文件信息是非必要的,加固平台加固后可以进行自动重新签名,而自动签名所需要的信息正是之前上传的签名信息。为了保证签名文件的保密性和安全性,不对第三方加固平台公开,那么不能执行第二行代码即可,因为加固

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值