无法在 Android Wear in Google Play 开发者控制台上分发应用程序

Unable to distribute app on Android Wear in Google Play Developer console

我正在尝试通过 Google Play Developer Console 提交我新创建的 Android Wear 表盘。问题是定价和分发部分中的复选框 "Distribute your app on Android Wear" 被禁用。我不明白为什么。

我做了什么:

1) 已上传 Android Wear

的屏幕截图

2) 在封闭测试版中上传了 2 个 APK 文件。两个文件都用一个密钥签名,具有不同的版本名称。第一个是 phone 带有嵌入式磨损 apk (minSdkVersion 23) 的 apk,第二个 - 独立磨损 apk (minSdkVersion 25) 具有元数据 android:name="com.google.android.wearable.standalone" android:value="true" 在清单文件中。

一切似乎都很好,应用程序已准备好在生产中发布,除了 "Distribute your app on Android Wear" 复选框仍处于禁用状态。 我缺少什么?

您可能需要查看 Packaging and Distributing Wear Apps 看看是否遗漏了什么。

如前所述,除了指定 APK 的版本代码(独立 Wear 和嵌入式 Wear)外,还检查您是否更新了 Wear 模块的 build.gradle 文件以包含以下内容(如果现有嵌入式应用至少具有SDK 版本 23:

android {
    // Allows you to reference product flavors in your
    // phone module's build.gradle file
    publishNonDefault true
    ...
    defaultConfig
    {
       // This is the minSdkVersion of the Wear 1.x embedded app
       minSdkVersion 23
       ...
    }
    buildTypes {...}
    productFlavors {
        wear1 {
          // Use the defaultConfig value
        }
        wear2 {
            minSdkVersion 25
        }
    }
}

另外,查看 Distribute to Android Wear 了解更多信息。

我收到了来自 Google 支持人员的电子邮件,说他们已经解决了这个问题并做出了一些改变。他们注意到我的移动清单文件缺少行 <uses-feature android:name="android.hardware.type.watch"/> 我在 Wear 模块清单中只有这一行。

我添加了这一行,为 wear 2.0 和 1.0 上传了一个包含 2 个 apk 文件的新版本,然后启用了该复选框。

目前,Wear 2.0 的官方 dock 并未明确说明应将此行添加到两个清单文件中。

同样奇怪的是,在这个项目出现问题之前,我成功地将另一个 Wear 2.0 项目上传到 Developer Console(启用了复选框),并且该行仅在 Wear 模块清单中。

我实际上已经通过电子邮件 Google 说明了这一点 - 这是他们方面的问题,他们现在已经解决了...

如果您将 <uses-feature android:name="android.hardware.type.watch"/> 添加到您的移动设备清单(不是可穿戴设备清单),您的 apk 将只分发给可穿戴设备!如果你也想为手机分发,请不要这样做。

我也遇到了同样的问题。复选框 "Distribute your app on Android Wear" 显示为灰色。我已按照 App Distribution 中的所有说明进行操作,添加了所有可穿戴设备屏幕截图,但仍然无法选中此框。 我已经联系了支持。首先他们说,在我的可穿戴清单中需要更换:

android.hardware.type.watch

与:

android.hardware.type.WATCH

这没有帮助。接下来他们告诉我,开发者控制台中有一个错误,应该在 5 月 9 日星期二之前解决。不幸的是,他们没有解决任何问题,或者根本没有做任何事情。 接下来他们告诉我,我需要将 <uses-feature android:name="android.hardware.type.watch"/> 添加到我的移动清单文件中。我做不到,因为 apk 将只分发给可穿戴设备。

我已经向他们发送了我的 manifest.xml 和 build.xml 移动和可穿戴设备并等待回复。

4 月之前我添加了大约 10 个可穿戴应用程序(也支持 2.0)并且没有问题。

在我看来,他们不知道问题出在哪里,也无法帮助我们。此外,他们的说明 App Distribution 已过时,在一个地方有信息,最低 SDK 应为 23,下面几页有最低 SDK 21 的示例代码。

我偶然发现了完全相同的问题。

  • 我的清单中有 <uses-feature android:name="android.hardware.type.watch" />
  • 我的清单中有 <meta-data android:name="com.google.android.wearable.standalone" android:value="true" />
  • minSdk 设置为 25

但是 Wear 分布的复选框仍然被禁用。

为了好玩,我尝试使用 Chrome 的检查工具编辑 HTML,并从复选框中删除了 "disabled" 属性。果然,启用复选框后设置卡住了,现在启用了 Wear 分发。试试吧!

您的 APK 需要其他答案中提到的以下两个标签。

但是,如果为该版本上传了原始 APK(不带标签),您仍然无法选中该框。您必须删除该 APK,并确保只保留包含所有这些字段的 APK。

我犯了这个错误,不得不破解上面的解决方案,但之后无法发布,直到我删除了我上传的没有独立标签的原始 APK。我询问了支持,他们似乎证实了这一点。

无论如何,在破解之前尝试一下,希望能有所帮助。

您的 Wear 清单中需要:

需求一:

<uses-feature android:name="android.hardware.type.watch" />

需求二:

<meta-data
    android:name="com.google.android.wearable.standalone"
    android:value="true" />