插件式开发(一)-----已安装
2016-07-05 20:08
218 查看
本文转自:这里呀--->点击打开链接1.插件式开发基础 插件式开发是指,只要提供一个主应用程序,此应用程序可以安装和调用其他插件式的功能模块,当应用程序需要增加功能时,不需要升级应用程序,而是通过安装新功能模块的插件即可。其单个插件的运行必须依赖于主应用程序。插件开发是单独进行的。(这里的插件其实完全就是一个单独的App她只是没有默认的启动的界面,安装之后手机上没有图标,需要的时候通过其包名+类名+action就可以调用了。) 2.插件是开发的构想 A.通过如下代码可以获取Android系统内的安装应用的列表,同时获取每个安装包的信息。 [java] view plain copyList<PackageInfo> pkgs = pm
.getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES);
B.通过如下代码可以获取每个包的资源 [java] view plain copyPackageManager pm = contxt.getPackageManager();
res = pm.getResourcesForApplication(packageName);
C.通过如下代码可以获取资源的id [java] view plain copy/* Resources res */
res.getIdentifier(resName, resType, packageName)
可以先判断一下,有没有安装相应的插件,如果安装了的话,就直接使用,没有的话可以提示用户是否下载安装就行了。
以上功能经过验证后发现,设想完全可以实现,插件式开发设想成立。然而,发现没有,这样apk必须安装才能运行,如果不安装要是也能运行该多好啊!
.getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES);
B.通过如下代码可以获取每个包的资源 [java] view plain copyPackageManager pm = contxt.getPackageManager();
res = pm.getResourcesForApplication(packageName);
C.通过如下代码可以获取资源的id [java] view plain copy/* Resources res */
res.getIdentifier(resName, resType, packageName)
可以先判断一下,有没有安装相应的插件,如果安装了的话,就直接使用,没有的话可以提示用户是否下载安装就行了。
使用方法:
Intent intent = new Intent(); ComponentName componentName =
new ComponentName("插件的包名","插件包名.要打开的文件名(eg:.chajianActivity"));//这个没问题 intent.setComponent(componentName); intent.setAction("android_intent_action_chajian"); startActivity(intent);
以上功能经过验证后发现,设想完全可以实现,插件式开发设想成立。然而,发现没有,这样apk必须安装才能运行,如果不安装要是也能运行该多好啊!
相关文章推荐
- FastDFS学习总结(2)--Tracker与Storage配置详解
- FastDFS学习总结(2)--Tracker与Storage配置详解
- java容器
- git(4)如何在windows上安装git
- motan源码解读:注册中心zookeeper(1)
- PAT (Advanced Level) 1111. Online Map (30)
- python find()
- leetcode 334. Increasing Triplet Subsequence
- hdu 1968 Just a Hook 线段树区间更新
- GNU C 、ANSI C、标准C、标准c++区别和联系
- 喷码机配合厂线进行标识方案
- jsp学习总结
- 硬件驱动程序的知识点滴
- [bzoj3953] [WF2013]Self-Assembly
- Mybatis数据操作
- php发送邮箱
- 跟我学Android之九 日期时间组件
- 跟我学Android之九 日期时间组件
- 跟我学Android之九 日期时间组件
- shell脚本:收集系统和各种服务的状态信息