【问题标题】:Android Instant App not being installed correctly(Behaves like a normal app)Android Instant App 未正确安装(表现得像普通应用程序)
【发布时间】:2018-06-14 00:18:59
【问题描述】:

我正在尝试使用以下步骤在移动设备上启动免安装应用:

  1. 在 Android Studio 中生成 Instant App 的签名 apk,这将生成一个包含基本 apk 文件和功能 apk 文件的 zip 文件。
  2. 解压生成的文件。
  3. 使用命令adb install-multiple -r -t *.apk 安装应用程序。 有人告诉我使用adb install-multiple -r -t --instantapp *.apk,但--instantapp 标签会给我以下错误: Exception occurred while dumping: java.lang.IllegalArgumentException: Unknown option --instantapp

因此,在这样做之后,我希望即时应用程序能够安装在我的移动设备中。有趣的是,Instant App 是可启动的,但它会创建一个普通的应用程序图标,就好像它不是一个即时应用程序一样。如果我去设置 -> 谷歌 -> 即时应用程序,安装的即时应用程序列表是空的。

此外,以这种方式安装的 Instant App 的行为与在 Android Studio 中直接使用 Run 安装的 Instant App 的行为不同。

我使用的设备是 Google Pixel(8.0.0) 和 Nexus 5X(7.1.1)。

感谢您的帮助。

【问题讨论】:

  • 您是在模拟器还是物理设备上进行测试?
  • 对于 pre-O 设备,您将收到该错误。否则,该命令应该适用于 O+,我没有任何问题。
  • 对于 pre-O,如果你想让 AS 为你的设备构建一个签名的 Instantapp,你需要使用buildTypes { debug { signingConfig signingConfigs.config } }

标签: android adb android-instant-apps


【解决方案1】:

更简单的方法是使用 Instant Apps SDK 1.2 及更高版本中的即时应用 CLI。使用 SDK 管理器(在 Android Studio 中或从命令行版本)下载 SDK,并将 extras/google/instantapps/ia(在您的 SDK 文件夹中)添加到您的 PATH。

然后您可以使用ia run <something.zip> 从命令行在任何受支持的设备上启动即时应用程序。请注意,如果您使用的是模拟器,请确保设备上的 Google Play 服务版本是最新的(您可以从模拟器的控制面板进行更新)。

【讨论】:

    【解决方案2】:

    您使用 install-multiple 命令查找的命令是 install-multiple -r -t --ephemeral *.apk

    【讨论】:

      【解决方案3】:

      我的清单中有这些,它工作正常。

      <manifest ... 
      xmlns:dist="http://schemas.android.com/apk/distribution"
      android:targetSandboxVersion="2">
      

      【讨论】:

        猜你喜欢
        • 2015-01-11
        • 1970-01-01
        • 1970-01-01
        • 2019-02-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-10-19
        • 1970-01-01
        相关资源
        最近更新 更多