安卓应用程序插件化开发框架 -AAP Framework
2012-08-21 12:33
183 查看
介绍
这个框架的初衷,是为了方便让程序模块化、插件化,将一个apk应用拆分为多个apk。
不明白这个插件化、模块化是怎么回事的话,可以看看腾讯微信的安卓客户端中的插件配置。
在这里我会以腾讯微信为例,如何使用这个框架。 (腾讯微信并不是真正的插件化,它是伪的,插件并非与它的主程序分离开,结果就是每次插件的更新,都必须以整个程序的更新为代价)
都能干啥
框架的思想,主要是通过apk清单文件中的sharedUserId属性来吧多个apk融合为单一的dalvik虚拟机,也就是融合为一个进程,这样就变相逾越了android框架中不同apk权限不同无法互通的鸿沟(rpc啦什么的其它的毕竟不如这个来的实在)。
从最简单的皮肤插件到复杂的涉及数据库的拓展功能,从普通activity跳转到把插件的activity转变为view并附加到主程序中的拓展功能,都是可以通过本框架来实现的,当然,本框架只是提供了一种途径,如何编码还得靠自己。
本人能力有限,可能有一些错误、疏漏或者不足之处,请不吝指教,我的博客地址在左下角,或者我的邮箱,都可以联系到我。
ps:下面会以腾讯微信为例,这里声明一下,本人没有对微信安卓客户端进行任意形式的反编译与破解工作,只是看球半天进行简单的猜测而已。
框架结构
本插件框架由三个包组成:
org.igeek.android.pluginframework 这个包种类是框架的主要操作类
PluginBuilder 组装插件
PluginDescription 组装用户自定义的插件描述
PluginInvoke 插件功能调用
PluginSearch 查找插件
org.igeek.android.pluginframework.annotation 未来可能会考虑使用注解
PluginDescription 用于用户自定义描述类的注解
PluginFeature 用于插件类的注解
PluginMethod 用于插件类方法的注解
org.igeek.android.pluginframework.beans 框架内部使用的一些beans
Plugin 插件包
PluginFeature 插件类
PluginFeatureMethod 插件方法
org.igeek.android.pluginframework.util 一些工具类
XMLParse 插件包
更多精彩内容请见:http://www.phoneno1.com/thread-628-1-1.html
这个框架的初衷,是为了方便让程序模块化、插件化,将一个apk应用拆分为多个apk。
不明白这个插件化、模块化是怎么回事的话,可以看看腾讯微信的安卓客户端中的插件配置。
在这里我会以腾讯微信为例,如何使用这个框架。 (腾讯微信并不是真正的插件化,它是伪的,插件并非与它的主程序分离开,结果就是每次插件的更新,都必须以整个程序的更新为代价)
都能干啥
框架的思想,主要是通过apk清单文件中的sharedUserId属性来吧多个apk融合为单一的dalvik虚拟机,也就是融合为一个进程,这样就变相逾越了android框架中不同apk权限不同无法互通的鸿沟(rpc啦什么的其它的毕竟不如这个来的实在)。
从最简单的皮肤插件到复杂的涉及数据库的拓展功能,从普通activity跳转到把插件的activity转变为view并附加到主程序中的拓展功能,都是可以通过本框架来实现的,当然,本框架只是提供了一种途径,如何编码还得靠自己。
本人能力有限,可能有一些错误、疏漏或者不足之处,请不吝指教,我的博客地址在左下角,或者我的邮箱,都可以联系到我。
ps:下面会以腾讯微信为例,这里声明一下,本人没有对微信安卓客户端进行任意形式的反编译与破解工作,只是看球半天进行简单的猜测而已。
框架结构
本插件框架由三个包组成:
org.igeek.android.pluginframework 这个包种类是框架的主要操作类
PluginBuilder 组装插件
PluginDescription 组装用户自定义的插件描述
PluginInvoke 插件功能调用
PluginSearch 查找插件
org.igeek.android.pluginframework.annotation 未来可能会考虑使用注解
PluginDescription 用于用户自定义描述类的注解
PluginFeature 用于插件类的注解
PluginMethod 用于插件类方法的注解
org.igeek.android.pluginframework.beans 框架内部使用的一些beans
Plugin 插件包
PluginFeature 插件类
PluginFeatureMethod 插件方法
org.igeek.android.pluginframework.util 一些工具类
XMLParse 插件包
更多精彩内容请见:http://www.phoneno1.com/thread-628-1-1.html
相关文章推荐
- 安卓应用程序插件化开发框架 -AAP Framework【开源项目】
- 安卓应用程序插件化开发框架 -AAP Framework【开源项目】
- 安卓应用程序插件化开发框架 -AAP Framework
- android -- 框架 安卓应用程序插件化开发框架 -AAP Framework【开源项目】
- 安卓应用程序插件化开发框架 -AAP Framework
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.0 版新增消息管理
- Curator-Framework开源Zookeeper快速开发框架介绍
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.8 版本发布
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->Web版本工作流部分业务处理界面与查看界面全新展示
- 【iOS 开发】将自己的框架打包成 Framework 的方法
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2-> “Tab”标签新增可“最大化”显示功能
- Android 使用动态加载框架DL进行插件化开发
- 罗列几个Android插件化开发框架
- All-In-One Code Framework: 微软一站式开发技术框架 2009-9-17 新增代码示例简介
- RDIFramework.NET — 基于.NET的快速信息化系统开发框架 - 5.1 数据字典管理模块
- RDIFramework.NET ━ .NET快速信息化系统开发框架-第2章 产品概述
- 超敏捷 Java 开发框架 ServcieFramework 作者祝海林专访 .
- 如何将vs2012开发的基于.net framework 4.5框架的MVC4项目部署到windows server2003服务器上
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.0 版本新增序列管理
- Android 使用动态加载框架DL进行插件化开发