我们希望开发和扩展Android应用程序,并且正在寻找一种处理插件的方法。
您认为最佳方法是什么:
使用Android的PackageManager。这里的问题是PM的设计并没有考虑插件,所以我们必须自己实现依赖性检查等功能。
使用现有的Java框架,如JPF(Java插件框架)或OSGi。 OSGi看起来对我们来说太大了,而且在Android上没有太多关于JPF的信息。
其他想法?
答案 0 :(得分:5)
你对“插件”究竟是什么意思?使用Intent
和IntentFilter
概念,您可以做很多我称之为“插件”的事情。例如,您可以允许其他应用程序在上下文菜单中添加条目。
答案 1 :(得分:4)
另一种方法可能是使用OSGi框架。我不确定您是否熟悉它,但它允许您使用组件(称为捆绑包)构建应用程序,并且可以安装,更新和卸载这些应用程序,而无需停止其他组件。 OSGi用于创建完全模块化的应用程序,或者为现有应用程序创建插件机制。
OSGi有几种开源实现。 Apache Felix在Android上开箱即用,并且将其嵌入到您的应用程序中也非常简单。
如果您有兴趣,我可以提供更多指示,请随时跟进此答案。