硕士生
 
- 金币
- 2351
- 好评
- 19
- 信誉
- 102
|
本帖最后由 安静的美男子 于 2025-9-11 16:33 编辑
补充一句,这是云注入生成的配置文件目录/storage/emulated/0/Android/data/com.cloudinject/files/cloudInject/packet/,他就是把这个回填到主程序里的,在这个文件里面就能看到它把哪个dex取出来修改了。
用云注入的时候时常会遇到各种奇奇怪怪的问题,比如不生效,比如闪退打不开,今天我来解决这个问题,今天以快影7.2.0.702020为例,先说她注入的原理,云注入的四件套,签名META-INF,AndroidManifest,这个里面主要加入了新权限,assets这里面一个随机命名的文件,classes.dex会生成2个,其中一个就是云注入的dex,另一个是往里面写了一个这Lcom/sadfxg/fasg/App;,这个东西他写在顶部,完整版是.super Lcom/sadfxg/fasg/App;它替换了原来的.super Landroid/app/Application;这是我通过对比dex的出来的结果,既然它闪退,那说明,它替换的这个不大对劲,我们要怎么做呢?
既然知道它的工作原理就好办了,还原这个.super Lcom/sadfxg/fasg/App;为.super Landroid/app/Application;
然后我们在所有dex里面搜索.super .Landroid/app/Application;结果可能是搜出来一大堆,但是我们根据软件的工作原理,一般肯定是在启动项,或者程序主类名里面(我又不是专业的,不知道叫啥。)我们将主类名里面的顶部的.super .Landroid/app/Application;替换成.super Lcom/sadfxg/fasg/App;就好了,此方法用来解决闪退的,如果不生效,或者还闪退,那就换一个,不行在换一个试试,另外我们说到它的四件套,遇到闪退还可以把没注入前的AndroidManifest和META-INF回填到注入后的包里,也可解决大部分闪退和不生效的问题。
那接下来就是彻底去除云注入的方法了,我们知道了它的四件套,有用的就2件套,删除云注入新增的dex,然后还原被他改过的.super Landroid/app/Application;再删除assets里面的25kb的随机文件,不就彻底去除了么。
方案B,假如你把上面的都换了也没解决问题,那就换个思路
直接修改AndroidManifest里面的Application下的 android:name="原本真实的入口"改为 android:name="com.sadfxg.fasg.App"就是把真入口云注入的入口com.sadfxg.fasg.App,也能解决问题。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|