即时在Android中安装插件

时间:2012-01-31 11:11:07

标签: android plugins modularity

我正在尝试实现一个带有一个核心和多个插件的模块化Android应用程序。

这个想法是你下载主核心APK,如果你需要一个功能,应用程序将从远程服务器(可能是Android市场)下载它,并将其安装为第二个不可启动的应用程序(没有启动器)然后从该新插件中激活一个意图。

应用程序是否可以下载并安装APK 而无需用户启动 - 如果它们都使用相同的密钥签名?

理由是,可能有两个(或更多)团队为陆上和海上的同一应用程序开发代码,并且不会在它们之间共享代码,只有接口。

我们的容量已经达到最大值,但业务需要更多工作,我们不会交出源代码。

谢谢,

约翰

1 个答案:

答案 0 :(得分:1)

  

如果用户使用相同的密钥签名,应用程序是否可以下载并安装该APK而无需用户启动它?

这取决于“发起”的含义。你可以自己下载APK。您可以使用正确的MIME类型触发ACTION_VIEW Intent以启动安装程序。然后,用户必须单步执行安装程序以确认安装,批准所请求的权限等。

  

将其安装为第二个不可启动的应用程序(无启动器)

这可能不起作用。在Android 3.1+上,应用程序最初安装在“已停止”状态。值得注意的是,在用户手动启动新安装的应用程序的活动之前,BroadcastReceviers才会生效。如果用户没有从该应用程序手动启动某些内容,我不知道您的应用是否能够启动其他应用的活动(或服务)。我没有尝试过这种情况。

恕我直言,您的“离岸”人应该编写Android库项目,然后将其集成到您的应用中。