Android插件化原理系列(一)启动未声明的Activity
来源:互联网 发布:淘宝详情图怎么上传 编辑:程序博客网 时间:2024/05/29 09:54
启动未声明的Activity的好处
1,插件化启动Activity
2,简化AndroidManifest.xml文件
3,动态部署Activity
原理
说到Activity的启动流程,读过源码的都知道我们都会经由android.app.ActivityThread类在主线程中执行。ActivityThread类有一个成员叫mInstrumentation,它会负责创建Activity等操作。通过篡改mInstrumentation为我们自己的PluginInstrumentation。当mInstrumentation为我们的时候,那就好办了,我们通过在AndroidManifest.xml声明一个占位的 LauncherActivity,并传入我们需要启动的Activity的类名过去。在PluginInstrumentation中,因为LauncherActivity是已经注册过的,我们可以顺利通过系统检测,然后在PluginInstrumentaction中的newActivity中通过Intent的Activity名称,通过反射的形式new 一个我们想要启动的Activity的类,这样我们的Activity虽然没有在AndroidManifest.xml中声明,但是却是被系统所管理的。
这篇文章主要讲解的是启动未声明的Activity的原理,这项技术主要用于动态加载技术。当然了,具体涉及到插件化的还有资源的问题。
技术交流
QQGroup:297798093
email:ibeam@qq.com
0 0
- Android插件化原理系列(一)启动未声明的Activity
- Android插件化系列第(一)篇---Hook技术之Activity的启动过程的拦截
- android插件开发-就是你了!启动吧!插件的activity(一)
- Android插件化系列第(五)篇---Activity的插件化方案(代理模式)
- 插件式开发(二)----Android热更新原理--未安装--只启动普通class
- Android启动Activity的方式原理分析
- Android 通过反射启动未安装的APK中的Activity
- 深入理解Activity进阶系列(一):Activity启动
- Android插件化开发之运行未安装apk的activity
- Android Activity 系列一
- Android的activity启动的过程(一)
- 滴滴插件化框架VirtualAPK原理解析(一)之插件Activity管理
- android插件化-apkplug从宿主启动插件Activity-06
- android插件开发-就是你了!启动吧!插件的activity(二)
- 插件化入门篇-如何启动一个未注册过的Activity
- Android插件化基础(4),动态启动插件中的Activity
- 插件占坑,四大组件动态注册前奏(一) 系统Activity的启动流程
- 插件式开发(三)----未安装---启动all,包括activity
- Xshell use
- SURF学习(一)——积分图
- C#动态编译类
- grep设置查找颜色高亮
- UI_UIImage
- Android插件化原理系列(一)启动未声明的Activity
- HDU 1242 Rescue
- Android studio 上使用aidl总结
- 【笔记】NodeMcu做为Client与Server通信(未整理)
- python 字符串
- nodeJs个人笔记
- CurrentHashMap putIfAbsent(key,value)用法讨论
- UI_UIControl
- SEO企业文案思路:给的再多,不如懂我