版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、新插件机制DROID PLUGIN张勇360手机助手一、DROID PLUGIN是什么DROID PLUGIN是全新的ANDROID插件机制实现一、DROID PLUGIN是什么Jar动态加载加载APKDroid Plugin一、DROID PLUGIN是什么1、一种免安装运行的机制 2、是一个沙箱 3、是模块化的基础 二、插件不能做什么?1、通知栏限制2、安全性担忧3、机型适配4、需要预先注册权限三、插件特点免安装 无需安装 无需修改源码 二进制级别隔离模块化 插件之间可以互相调用 解除耦合 单模块升级 静默升级隔离 崩溃隔离 还原插件自己的多进程机制,适配性 模块隔离四、基本架构Plugi
2、n App 1Plugin App 2Plugin App 3Plugin App .Host程序五、插件HOST程序架构插件启动进程管理(AMS)Manifest预先注册占坑、预先注册权限缓存功能的反射机制APK解析包管理服务(PMS)HOOK模块(Binder、代理【欺下瞒上】)六、基本原理共享进程Android提供一个进程运行多个APK的机制通过API欺骗机制瞒过系统占坑通过预先占坑的方式实现不用在manifest注册通过一带多的方式实现服务管理HOOK机制动态代理实现函数hookBinder代理绕过部分系统服务限制IO重定向6.1、进程共享System serverZygoteApp
3、ProcessBindApplication,LauncherActivityStartActivity发送fork命令以及相关参数Fork一个新的进程并执行ActivityThread的main函数6.1、进程共享签名一致共享user id进程名称相同ActivityThread.mPackages和mResourcePackagesActivityThread.mH以及Handle中的callback HOOK系统进程共享与HOST共享进程Host预先注册不同进程,按照插件选择Hook欺骗system_server进程让其以为只是host程序存在Hook欺骗插件进程让系统api以为运行了两
4、个apk插件6.2、HOOK(API欺骗)之动态代理实现欺下瞒上的目的PackageManagerActivityManagerNativeIContentProviderLibCoreActivityThread.mH的Callback Hook6.3、HOOK (API欺骗)之BINDER代理ServiceManagerISessionManagerINotificationManagerIMountServiceIClipboardIAudioService6.4、HOOK (API欺骗)之INSTRUMENTATION欺骗系统标准API用于单元测试监控插件系统中每个Activity的启
5、动退出七、解决四大组件注册问题Activity:占坑静态广播:动态注册ContentProvider:占坑Service:占坑+代理7.1、占坑预注册一堆StubActivity、StubContentProvider、StubService预注册一堆进程进程、StubActivity、ContentProvider、StubStubService动态分配7.2、占坑-解决ACTIVITY注册问题占坑:预注册一堆各种Launch Mode的ActivityHook:startActivity和handleLaunchActivity7.3、占坑-解决CONTENT PROVIDER注册占坑:每
6、个进程预注册一个代理ContentProviderHook:ActivityManager.getContentProvider函数集7.4、占坑-解决SERVICE注册占坑:每个进程预注册一个代理ServiceHook:StartService、BindService、StopService,UnbinService等函数集ServiceManager:解决一个进程同时运行多个服务的情况7.5、预先注册-解决广播注册问题包解析:每个进程启动时注册静态广播静态广播非静态八、自己实现包管理服务(PMS)插件管理:安装、卸载、更新Intent解析匹配:解析为Service、Activity等包解析:PackageInfo等的解析、查询九、自己实现ACTIVITY管理(进程管理)服务(AMS)进程管理:插件进程分配Stub组件分配:Ac
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建设银行按揭合同范例
- 勘探开发合同范例
- 新车合同范例
- 车间生产停电应急
- 借外汇外债合同范例
- 工厂购买塑料合同范例
- 2021年10月广东深圳市光明区信访局公开招聘一般类专干冲刺题(一)
- 政府采购合同变更合同模板
- 施工工地民工合同范例
- 政府土地确权合同范例
- 《学习的概述》课件
- 人教版六年级数学上册期末复习系列之口算题专项练习(原卷版)(全国通用)
- 《手表基础知识》课件
- GB/T 28054-2023钢质无缝气瓶集束装置
- 小学《道德与法治》课程学习评价
- 2023年度武汉房地产市场报告2024.1.12
- 2024线上冲锋衣市场趋势报告
- 新人教版九年级下数学27-1《图形的相似》课件
- 腹腔镜手术后患者的护理查房
- 全国优质课一等奖七年级心理健康教育《学习心理-学习从心开始》课件
- 基础拓扑学讲义答案尤承业
评论
0/150
提交评论