首先,apk共存之后会打开软件出现以下信息:
我们不用搜索关键字的方法去找关键代码,因为有的软件会对字符串进行加密 从而无法搜索到
首先,打开需要去除包名校验的App 使用开发者助手或者Activity记录 来记录Activity的类名。
复制之后 打开MT
转成Java后我们可以看到getPackageName的值赋给了d
问
这时我们返回smali代码 至于为什么要添加代码而不是直接去修改条件语句呢?
答案是完全可以的,只不过这个软件代码混淆了 理解起来有点复杂 直接对d进行赋值操作会简单一点 你们在修改过程中可以对软件进行分析之后 再进行修改操作
问
为什么要加上一行这样的代码?
const-string v0, "共存前包名"
因为程序是判断当前应用包名与原应用包名是否相当 我们在getpackagename方法下面对 其进行重新赋值 就可以啦(getpackagename方法返回String)
加上之后
注意 有的应用可能是将包名直接赋值给字符串 而不是通过getPackageName等方法去获取
这时候有小伙伴要问啦,为什么你不直接搜索getPackageName方法呢?
你看下直接搜索这个方法会出现什么
这样会搜出来很多关系不大的代码,这样分析有点浪费时间。
最后保存签名安装
可见已经是专业版了
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END