android模块化app开发笔记环境搭建

android模块化app开发笔记环境搭建

ID:32695663

大小:154.50 KB

页数:8页

时间:2019-02-14

android模块化app开发笔记环境搭建_第1页
android模块化app开发笔记环境搭建_第2页
android模块化app开发笔记环境搭建_第3页
android模块化app开发笔记环境搭建_第4页
android模块化app开发笔记环境搭建_第5页
资源描述:

《android模块化app开发笔记环境搭建》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、由于项目做的越来越大,业务上就产生了要将app模块化的需求,所谓模块化就是将一个app分成不同功能的小模块(插件),当安装程序的时候并不需要将所有模块一次全部安装,用户可以在需要的时候视情况从服务器上更新添加小插件。android上模块化一直都有人在摸索也出现了不少框架各有优特点,我学习apkplug这个插件化框架。这个框架的特点是1)插件就是普通apk文件,开发插件跟普通app没有太大区别省去了学习固定api的功夫了。2)插件apk不用在本地安装,网上比较经典的插件化框架都是通过android:sharedUserId="x

2、xx"的形式将插件与app进行关联,而apkplug不用安装在app进程中运行也算是它的一大特点3)通过标准OSGI服务实现插件间通讯,我们开发应用时就可以定义自己的通讯接口了,而不必拘泥于固定的接口。一环境搭建从apkplug官网下载其最新的sdk解压出来的文件目录结构为如图1新建一个主应用工程我取名为myapkplughelloworld,将armeabi,Bundle1.4.0.jar两个文件放入工程的libs文件夹中如图28/8配置应用权限到工程的AndroidManifest.xml中

5、keyboardHidden"/>下一步便是调用SDK启动插件了。8/8这里需要写一个PropertyInstance接口它是apkplug定义的目的是为了插件框架启动时传人一些启动参数,我够出来这个接口的定义如下,具体详细使用可以看apkplug官方提供的文档基本上是模块化的东西[java]viewplain

6、copy1publicinterfacePropertyInstance{2/**3*框架配置信息获取接口4*框架将通过该接口从系统获取必要信息5*可以通过该接口实现框架信息的本地保存6*@paramkey7*@return8*/9publicStringgetProperty(Stringkey);10/**11*框架配置信息设置接口12*框架通过该接口设置其产生的配置信息13*可以通过该接口实现框架信息的本地保存14*@paramkey15*@paramv16*/17publicvoidsetProperty(String

7、key,Stringv);18/**19*框架启动时将自动安装该该函数提供的文件20*@return本地插件绝对路径21*/22publicString[]AutoInstall();23/**24*框架启动时将自动安装并启动该该函数提供的文件25*@return本地插件绝对路径26*/27publicString[]AutoStart();28}PropertyInstance写好以后便可以调用FrameworkInstance类启动框架了如下代码[java]viewplaincopy29try30{8/812Framewo

8、rkInstanceframe=FrameworkFactory.getInstance().start(null,Launcher.this,3MyProperty.getInstance(this.getApplicationContext()));4}catch(Exceptionex){5System.err.println("Couldnotcreate:"+ex);6//ex.printStackTrace();7StringBufferbuf=newStringBuffer();8buf.append("插件平台

9、启动失败:");9buf.append(ex.getMessage());10this.setTitle(buf.toString());11Toast.makeText(this,"插件平台启动失败",12Toast.LENGTH_SHORT).show();13}如果

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。