# Android插件化 activity
Android插件化是一种将应用程序的某些模块以插件的形式动态加载和卸载的技术。通过插件化,我们可以实现应用程序的模块化开发,提高应用程序的灵活性和可扩展性。本文将介绍如何在Android应用程序中使用插件化技术加载和启动一个插件化的Activity。
## 插件化框架
Android目前有很多成熟的插件化框架,比如[DynamicAPK](
在
原创
2023-07-18 07:23:15
155阅读
# Android Activity 插件化 attachBaseContext 实现指南
## 引言
在Android开发中,插件化是指将应用程序的功能模块以插件的形式独立开发,然后通过加载和启动插件实现程序的扩展性和灵活性。在实现插件化的过程中,一个重要的步骤是在插件化的Activity中正确地执行attachBaseContext方法。本文将指导你如何实现"android activity
原创
2023-07-21 21:44:12
144阅读
上一节Activity的插件化中我们解决了四大组件中最重要的组件Activity的插件化问题。四大组件中,Service同样是使用相对频繁的组件,所以Service的插件化也是比较重要的。本节我们就跟着VirtualApk源码看一下Service插件化的实现。Service插件化思路 在Activity的插件化中我们看到对于Activity的插件化,VirtualApk采用了Hook及在宿主
# Android 插件化之动态加载 Activity 教程
在 Android 开发中,插件化是一种很常见的技术,通过它,我们可以在不重启应用的情况下动态加载 Activity 及其他组件。本文将详细介绍如何实现“Android 插件化之动态加载 Activity”,以帮助新入行的开发者较为全面地掌握这一技术。
## 整体流程
下面是实现动态加载 Activity 的步骤,供你参考:
|
原创
2024-09-03 06:33:53
173阅读
## Android 插件化启动三方 Activity
### 介绍
随着移动互联网的发展,Android 应用的功能越来越复杂,业务逻辑也日益庞大。为了降低开发难度和提高开发效率,很多开发者开始采用插件化的方式来开发 Android 应用。插件化可以将不同模块的代码独立打包成 apk,然后通过动态加载的方式将插件模块加载到宿主应用中,实现模块的动态添加和删除。
本文将介绍如何在 Andro
原创
2023-10-08 13:33:16
72阅读
一、加载插件包 dex 的类加载器、二、生命周期回调方法、三、代理 Activity 组件、四、博客资源、
原创
2022-03-08 10:47:06
437阅读
Android插件化基础(4),动态启动插件中的ActivityAuthor:郑海波-莫川简介如何动态启动插件中的Activity呢?我们首先分析
原创
2022-10-20 10:31:43
287阅读
一、什么是Activity?Activity简单的说就是一个界面,我们在Android手机上看到的每一个界面就是一个activity。二、Activity的创建1.定义一个类继承activity,然后在清单文件manifest.xml文件的application节点下注册activity,这个activity就创建成功了。public class MyActivity extends Activi
转载
2023-08-31 12:54:24
93阅读
8.最简单的插件化解决方案插件化技术 1.合并所有插件的dex,解决插件类加载问题 2.预先在宿主中声明所有插件中得四大组件 3.把插件中的所有资源一次合并到宿主的资源中。8.1 在宿主清单文件里声明插件中的组件8.2hostapp 加载插件中的类/**
* * 由于应用程序使用的ClassLoader为PathClassLoader
* 最终继承自 BaseDexClassLoader
*
转载
2023-08-14 14:40:17
24阅读
Android 插件化系列文章目录、一、插件包 Activity 启动原理、二、分析主线程中创建 Activity 实例源码、1、LaunchActivityItem、2、ActivityThread、三、使用 Hook 技术在主线程创建 Activity 实例之前使用插件 Activity 类替换占位的组件、四、用于替换 ActivityThread 中 mH 中的 mCallback 静态代理类、五、Hook Activity 启动流程涉及的完整代码、六、博客资源、
原创
2022-03-08 10:13:40
222阅读
1. 概述 Android插件化架构,目前第三方的框架比较多,早几年自己用的是DL框架,这个框架的源码比较简单主要用的是静态代理。如果我们自己要去写
原创
2021-09-07 16:35:48
110阅读
Android 插件化系列文章目录、前言、一、Hook 点分析、
原创
2022-03-08 10:18:16
140阅读
一、分析 Activity 启动源码、1、源码分析、2、涉及到的 Activity 相关代码、二、Hook Activity 启动过程、1、分析相关 类 / 成员 / 方法 结构、2、反射获取 Activity 中的 Instrumentation mInstrumentation 成员字段、3、获取成员字段值、4、设置成员字段值、5、代理类开发、三、完整代码示例、1、主界面代码示例、2、代理类代码示例、3、跳转的界面、4、执行结果、四、博客资源、
原创
2022-03-08 10:46:58
202阅读
一、" 宿主 " 模块启动 " 插件 " 模块过程、1、" 插件 " 模块类名获取、2、" 插件 " 模块类加载器获取、二、" 宿主 " 模块加载 " 插件 " 模块中的资源文件、
原创
2022-03-08 10:47:02
181阅读
一、插件包 Activity 启动原理、二、需要反射的相关类、1、Instrumentation
原创
2022-03-08 10:15:42
403阅读
缘由首先说明一下为什么会有这篇文章。前段时间,插件化以及热修复的技术很热,Nuwa热修复的工具NuwaGradle,携程动态加载技术DynamicAPK,还有希望做最轻巧的插件化框架的Small。这三个App有一个共同的地方就是大量的使用了Gradle这个强大的构建工具,除了携程的框架外,另外两个都发布了独立的Gradle插件提供自动化构建插件,或者生成热修复的补丁。所以学习一下Gradle插件的
转载
2024-01-07 21:28:14
53阅读
[b] [align=center] [color=olive][size=large]Activity 生命周期[/size][/color][/align]
[size=small][color=olive]1、 Activity介绍
1) 概念:
Activity 是Android应用程序和用户交互的窗口;
2) 运行时的Activity特点:
i. 可见的
转载
2024-04-17 13:29:52
49阅读
一、使用 Hook 方式替换插件 Activity 资源、1、通过反射获取 ActivityThread 及 实例对象、2、通过反射获取 Instrumentation 实例对象、二、Instrumentation 代理类、1、持有被代理实例对象、2、代理执行 execStartActivity 方法、3、截获 Activity 实例对象、三、替换 Activity 中的 mResources 成员、四、完整代码示例、五、为不同的插件包设置不同的资源、
原创
2022-03-08 10:13:38
682阅读
一、反射相关源码说明、1、Instrumentation、2、ActivityMa
原创
2022-03-08 10:11:51
993阅读
Android 插件化系列文章目录、前言、一、Activity 任务栈相关源码、1、任务栈管理者 ActivityStackSupervisor、2、任务栈 ActivityStack、3、Activity 启动涉及到的组件、二、Activity 进程相关源码、1、Instrumentation 源码分析、三、博客资源、
原创
2022-03-08 10:43:59
224阅读