【问题标题】:How to run an apk in another application如何在另一个应用程序中运行 apk
【发布时间】:2021-09-09 19:00:22
【问题描述】:

我制作了几个电视应用程序。现在我正在制作一个可以启动所有这些应用程序的容器应用程序。但这里的限制是我不希望用户单独下载那些电视应用程序。我有所有这些电视应用程序的 apk。如何让我的容器应用程序运行这些 apk,以便它们在我的容器应用程序中启动。我正在使用的技术:

  1. Android 工作室
  2. Java
  3. API 级别 21

让我再次解释一下我的问题: 1) 拥有一个容器应用 2)有几个apk 3) 想要在该容器应用中运行这些 apk

【问题讨论】:

  • 安装这些 APK,然后在您的应用中使用 UI 以在这些应用中启动 Activity。

标签: java android containers apk television


【解决方案1】:

您不能,即使使用 Root,也没有真正可以“执行”apks 的应用程序。

您有 3 个选项:

  1. 预先(或手动)安装所有这些应用程序,然后尝试 使用 Intents 启动它们,就像启动其他应用程序一样 电话。

  2. 包括您在应用中提到的所有应用,如果您不是 初学者,您还可以查看 Firebase Dynamic Modules 可能 在这里有意义(除非这些模块很小,然后只包括 他们)

  3. 如果这适合您的用例:您可以显示多个启动器图标/ 有多个 Launchable 活动。

因此您可以安装您的应用,然后在启动器中显示 3+1 个应用。您的应用仍然可以启动其他应用,因为它们是您的应用。您可以在电话/通讯录应用中看到这一点,它是同一个应用,但在启动器中仍显示为 2。

一般来说,如果您想要一个用于 apk 的容器应用程序,您还有其他/更好的选择。不允许使用容器应用,因为它们会使病毒更容易传播。

【讨论】:

  • 所以根据您的 pt 2,我应该为这些应用程序创建单独的模块,而不是 apk,然后在我的容器应用程序中启动它们。但这些都是成熟的 iptv 和 ott,可能不适合作为一个小模块。
  • 抱歉,回复晚了,但是是的。老实说,除非您有其他理由这样做(如果这是您的第一个应用程序之一),我只会将模块放入其中。甚至银行应用程序都是 60MB+,如果你在它之下,我只会在代码中禁用这些部分。如果需要,您可以稍后使用 Firebase 动态模块。您还可以通过将这些部分真正放入模块中来使其更加模块化,使 Firebase 更容易,以防其他应用程序使用相同的部分/模块
  • 我有点不同意这一点。有可能的。 Virtual Android 可以做到:play.google.com/store/apps/details?id=com.pspace.vandroid
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-07
相关资源
最近更新 更多