爱生活

 找回密码
 立即注册
搜索
查看: 100|回复: 0
打印 上一主题 下一主题

Dex加密(下)—替换Application,dex怎么加密

[复制链接]

14万

主题

14万

帖子

2859

积分

金牌会员

跳转到指定楼层
楼主
发表于 2022-12-19 21:21:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

Dex加密(下)—替换Application


在 dex加密 中我们使用了解密的ProxyApplication作为了application的name,但是通常我们都会在主App中自定义一个MyApplication,并在其中做一些初始化工作,这个时候我们就需要把ProxyApplication替换成原本的MyApplication。
   在替换之前,我们先看看Application在系统中是什么时候开始创建的。
   ActivityThread的main方法是一个进程的入口,这里会调用attach()方法,从而通过binder机制调用ActivityManagerService的attachApplication()方法,然后这个方法又反过来调用ActivityThread的bindApplication()方法,接着发Handler调用handleBindApplication()方法。
   在handleBindApplication方法中调用makeApplication去创建一个Application对象。
   在newApplication()中才是真的去创建一个新的Application。
   回过头来看看实例化完Application之后在哪些地方用到了这个Application。
   替换完成之后看看四大组件中Application是否改动:
                                           Activity和service已经修改成功,Provider修改失败了,BroadCastReciver有点不同是个ReceiverRestrictedContext。
   先看看 BroadCastReciver:
   在ActivityThread中的












上一篇:删除的说说怎么找回?,删除的说说怎么恢复
下一篇:如何开展聊天话题,怎么开展话题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点统计|手机版|小黑屋|爱生活 ( 蜀ICP备20006951号 )|

 

快速回复 返回顶部 返回列表