如何自动将WearOS配套应用与Android手机应用一起安装

问题描述

我已经使用Google Play控制台Multi-APK delivery method将Android和WearOS应用发布为单独的APK。

从相应设备浏览时,两个应用程序均可被发现-手机上的Android应用程序和手表上的WearOS应用程序。此外,当手机应用程序安装在Android设备上时,我可以在WearOS设备上看到可以在Play商店应用程序的“手机上的应用程序”屏幕上安装配套应用程序。

Google的官方WearOS documentation声明以下内容

在运行Wear 2.0的设备上,当用户安装具有以下功能的电话应用时: 关联的手表应用(嵌入式APK或通过 Play控制台),则用户会收到有关 可用的手表应用。轻按通知以打开手表Play 商店,让用户可以选择安装手表应用。

但是,在手机上安装Android应用程序后,什么也没有发生。此外,用户不知道该应用程序具有WearOS配套应用程序,因为它在手机Play商店应用程序或网站上不可见。手表也是如此-当用户从其WearOS设备发现我的应用并安装该应用时,不会安装手机副本,也不会通知用户

WearOS应用程序不是独立的,因此需要手机应用程序才能运行。它具有相同的程序包名称,并使用相同的密钥签名。手表和手机上的WearOS应用程序都允许所有通知

那么,有没有一种方法可以自动安装WearOS应用程序,或者至少让用户知道他们可以安装它?谢谢!

解决方法

自从Wear OS 2.0以来,无法完全实现此目的。 Google全力以赴地提出了“独立”穿戴式应用的想法,并让我们开发集成应用的开发人员大为冷落。

据我所知,自Wear 2.0以来安装两个应用程序的唯一方法是如下所示的流程:

  1. 当用户运行您的电话应用程序时,请使用Capability API来检查您的应用程序是否安装在配对的手表上。
  2. 如果尚未安装,请向用户显示适当的UI,以告诉他们有关该问题的信息。
  3. 然后从该用户界面中执行一项操作,使用RemoteIntent.startRemoteActivity()在手表上打开Play商店到您应用的列表。

如果您先安装并运行该应用程序,则需要在watch应用中执行类似的操作。

此过程(带有一些代码示例)在此处记录:https://developer.android.com/training/wearables/apps/standalone-apps#detecting-your-app