如何在Android上实现app子组件的模块化结构?

Pen*_*m10 6 java architecture eclipse android modularity

我的Android主应用程序将包含一个主程序,其中包含一些预安装的模块.
然后我想稍后提供不同的模块,最好是作为单独的文件.模块如:位置,天气,议程.

你会怎么做到这一点?

我想在数据库中保留已安装/存在的模块.因此,我有时必须将模块放入数据库,可能是通过检测启动时是否存在.主应用程序将基于这些模块工作.

如何将这些模块构建为单独的文件?它们不会成为我申请中的切入点.因此它们不能是导航菜单中的应用程序.

这可能吗?
我如何使用Eclipse创建它?
我将以什么格式提供模块?
用户如何添加/删除模块?

Eri*_*ass 5

Android版允许您以松散耦合的应用程序一起IntentsContentProviders,所以它应该是能够实现你在找什么.困难的部分是预先计划一切,所以你有逻辑上的功能划分(所以事情很容易插在一起).

我想在数据库中保留已安装/存在的模块.因此,我有时必须将模块放入数据库,可能是通过检测启动时是否存在.主应用程序将基于这些模块工作.

您可以注册一个BroadcastReceiverfor ACTION_PACKAGE_ADDED,它将在安装新应用程序时触发.您的主应用程序应该能够使用它来确定何时安装其他模块.

我将以什么格式提供模块?

您可能仍希望将模块打包为apks,以便将它们上传到市场.如果您希望它们不出现在启动器(应用程序抽屉)中,您可以随时删除默认的<intent-filter>,并且该应用程序将无法启动(但仍可移动).

我如何使用Eclipse创建它?

您的模块仍然是独立的应用程序.

用户如何添加/删除模块?

从市场或直接下载网络(如果你想).