您的位置:首页 > 移动开发 > Android开发

使用apkplug实现Android客户端插件化

2015-05-15 16:49 211 查看
今天学习下使用apkplug实现Android客户端插件化,apkplug代码虽然不是开源的,但是说明文档比较全,可以很快到实现客户端插件化开发,参考文档:http://www.apkplug.com/

由于文档非常详细,这里记录些概念xìng的东西,加深记忆,具体使用看官方文档吧。

apkplug 介绍:

apkplug 是一个androidpíng台下免费的OSGI框架,是android程序插件化,模块化开发利器

apkplug 是一个极简的android插件化,模块化,轻应用解决方案,可以轻松的将android转化为模块化的轻应用

apkplug框架可以实现应用内部动态更新,绕过频繁提jiāo应用商店的难题

丰富灵活的通讯方式,可以让插件,主应用之间更加紧密的结合在一起。通用的OSGI服务接口又可以使插件之间保持最佳的耦合度降低应用复杂xìng

apkplug框架拥有灵活的通信接口定义方式

通过提前在宿主AndroidManifest.xml声明,插件可以支持Service组件

apkplug 可用于app的任何位置,也可以只作为一个小模块。它与应用融合在一起

我们可提供特殊的API接口,通过这些接口你可以设计出更加出sè的通用插件,诚挚希望与您合作

apkplug与其他android模块化框架有何不同

1.目前大部分模块化框架是基于android:sharedUserId方式开发的,插件apk需要独立安装,而apkplug插件与主应用融为一体不需要独立安装

2.目前大部分模块化框架需要开发者在开发插件时约定UI开发模式和通讯规则,而apkplug框架沿用了android原生的UI开发方式

3.apkplug与主程序的通讯方式除了支持访问数据库与SharedPreferences外还引入了OSGI服务的方式,增加了通讯灵活xìng与数据jiāo互扩展xìng

你可以用apkplug做什么?

1.将应用模块化可以轻易实现功能更新!最大的优势是在一个极小的功能更新时无需更新整个应用

2.通过插件化,模块化的方式减轻你的APP负担,彻底摆脱APP无限增大的问题

3.对用户而言可定制模块以让用户选择xìng安装,提供一套简洁的体验

4.简化开发流程,可将不同的功能jiāo由工程师负责开发,最终以插件的形式组合起来

5.将自己的APP变成一个轻应用píng台

使用apkplug的优势

1.模块化插件化开发与部署实现更快的迭代速度

2.提升用户体验,以模块化的部署方式可以减轻APP重量

3.轻松使用通用功能扩展模块如页面统计,主题切换等

4.降低应用的复杂度,插件化模块化的开发方式将各个功能分割开发。

apkplug插件注意事项

1.apkplug宿主应用的接入极为简单,开发者可参考demo代码模板在宿主应用任何位置启动框架

2.插件开发必须遵循一个规则:插件中不能存在宿主应用中相同的类(类包名+类名)

开发大体流程描述:

一.创建宿主项目(将插件píng台集成到了你的APP)

1、配置应用权限,就是些常规权限

2、配置工程,就是加入bundle.jar、libndkfoo.so、android-support-v4.jar包。

3、编写启动píng台需要的接口类

4、启动apkplug框架框架可以在宿主应用的任何一个activity里面启动。



二。创建一个插件

1、配置插件工程,osgi.jar(加入最新osgi.jar包)引入工程中,注意:osgi.jar不可打包到插件apk文件中,但你可以在调试过程中选择,而在最终打包是去掉以方便调试。

2、编写 BundleActivator,BundleActivator只是一个接口他有两个函数 分别是 start(BundleContext context) ,stop(BundleContext context) 框架启动和关闭插件时会分别调用

3、添加插件配置文档,plugin.xml 是一个配置表,通过它框架可以获取插件有关的信息,



三、在宿主应用中使用插件

1、将生成的插件apk文件加入主应用。当然你也可以在适当的时候通过网络下载插件,并且利用SDK提供的系统服务安装到框架中。

2、在宿主应用中启动插件。插件apk可以通过SDK提供的服务安装到框架中,也可以在PropertyInstance接口(宿主应用)中设置该插件为自动启动安装。

3、启动插件中的activity。注意:在插件中启动activity(包括启动其他插件或宿主应用的activity)不需要使用模板代码,它与android启动activity一样就可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐