多个APK互相交互

Fai*_*bid 5 plugins android module

最近我遇到了一些应用程序(例如Clockworkmod的Rom Manager),为了获得专业版,你必须下载另一个APK.然而,一旦这个APK被下载,Rom Manager自动知道这个APK已存在并添加了新功能.例如,另一个应用程序是Astro应用程序,您可以通过从Market下载模块来扩展它.

现在我知道如何检查另一个应用程序的存在,我也知道如何通过服务在应用程序之间进行交互.不过我的问题是,它看起来像Clockwork和其他应用程序使用不同的apks作为插件式架构.怎么做到这一点?他们预定了整个插件架构和服务模型,所以无论何时安装新的apk,主app都可以检查它是否有模块并调用命令?或者还有其他事情发生了吗?

bro*_*oot 1

我认为这些应用程序只知道它们的插件以及如何使用它们。插件被分开以节省一些空间或向免费应用程序添加付费功能。请注意,这些应用程序没有第三方插件 - 所有这些插件都是由应用程序作者创建的。

实际上我认为为Android应用程序创建真正的插件系统在技术上是可能的。您可以使用广播接收器搜索已安装的插件,然后通过一些 API 与它们交谈。然而,通过插件添加可扩展性并不是一件简单的任务,因此我认为为移动设备创建此类应用程序没有多大意义。