不同项目/分支中的 Android Instant App

Posted

技术标签:

【中文标题】不同项目/分支中的 Android Instant App【英文标题】:Android Instant App in different project/branch 【发布时间】:2021-11-08 00:26:07 【问题描述】:

我的 git 主分支上有一个普通的可安装应用程序。现在我想在分支上创建该游戏的即时版本。我已经按照here 的描述做了所有事情。在version-codes 它还说:

可以在两个单独的 android Studio 项目中开发免安装应用和可安装应用。

我猜这与拥有一个单独的分支相同。

这是我改变的:

AndroidManifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.my.app.package"
    xmlns:dist="http://schemas.android.com/apk/distribution"
    android:targetSandboxVersion="2">

    <dist:module dist:instant="true" />

    <application ...>

        <meta-data android:name="com.google.android.gms.instant.flavor" android:value="1337"/>
        ...
    </application>
</manifest>

targetSandboxVersiondist:modulemeta-data

在 build.gradle 中我添加了 implementation "com.google.android.gms:play-services-instantapps:17.0.1" 并将 versionCode 设置为 1。

但是当我上传应用程序包时,它说versionCode 1 已被使用。但是根据上面的引用,我认为应该可以上传一个只有即时版本的包。我是不是做错了什么?

【问题讨论】:

【参考方案1】:

对于免安装应用,请使用低于标准/非免安装应用版本代码的版本代码。 它允许从 Instant 版本安装标准版本。

如果您已经上传了标准版本,请将其版本代码增加到例如。 100并重新上传标准版。比为免安装应用使用低于 100 的版本代码。

确保尚未上传具有特定版本代码的 app-bundle 或 apk,这还包括未成功上传的 apk-s 和捆绑包,并包括该应用的所有版本,包括标准版和即时版。

【讨论】:

以上是关于不同项目/分支中的 Android Instant App的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio (3.2.1) Instant Run 不适用于 Jacoco 0.8.2?

为啥 Instant 在彼此之后打印时显示不同的值? [关闭]

深入理解Android Instant Run运行机制

Google Play 控制台上缺少 Android Instant App 统计信息

为啥我无法在 Android Instant App 中访问相机?

如何为 Android Studio 3.0 禁用 Instant Run