多个APK互相交互

时间:2010-09-11 21:24:51

标签: android plugins module

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

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

1 个答案:

答案 0 :(得分:1)

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

实际上我认为在技术上可以为Android应用创建真正的插件系统。您可以使用广播接收器搜索已安装的插件,然后通过某些API与他们交谈。但是,通过插件添加可扩展性并非易事,因此我认为为移动设备创建此类应用程序并不是很有意义。