在一个应用中捆绑多个应用

时间:2011-03-12 16:29:42

标签: android install apk

我正在开发一个Android应用程序,该应用程序使用多个第三方应用程序,通过意图调用,例如:第三方日历,webradio等。因此,为了正确启动这些意图,需要安装这些应用程序。是否可以在我的应用程序中包含这些apks,以便在我的应用程序安装时自动安装它们? 让用户手动安装这些应用程序似乎是一种非常糟糕的方式......

有什么建议吗?

由于  彼得

1 个答案:

答案 0 :(得分:7)

  

是否可以在我的应用程序中包含这些apks,以便在我的应用程序安装时自动安装它们?

这可能不是一个好主意。

对于初学者来说,这可能是侵犯版权的行为,除非您获得这些开发者明确许可以这种方式捆绑。

然后,问题是这些开发人员是否实际公开了他们期望您使用这种方式的API,以及该API是否对他们来说是唯一的还是通用系统的一部分(例如,{{1} })。用户应该能够安装他们想要的满足通用ACTION_SEND请求的任何应用程序(例如,Intent),而不是被迫使用您要求的某些应用程序。并且您不应该集成到不公开文档化和支持的API的应用程序,或者表明他们对此类集成感兴趣。

然后,如果这些应用最初并非通过某些标准分发服务(例如Android电子市场)安装,则可能会在以后更新这些应用。

然后,所有这些APK文件的问题使得您自己的APK文件更大,占用了设备上更多的空间。

如果你能完成所有这些,那应该是可能的。将APK打包为资源,首次运行时将其复制到外部存储,然后使用正确的MIME类型通过ACTION_SEND在其上启动ACTION_VIEW Intent

但是,这可能不是一个好主意。

  

让用户手动安装这些应用程序似乎是一种非常糟糕的方式...

理想情况下,您的应用程序不应该依赖于这些其他应用程序,因此用户是否拥有它们并不重要。您可以通过startActivity()PackageManager检测它们是否存在,然后使用它来确定是否要禁用部分应用,或指导用户安装额外的应用程序等。