从通知操作按钮直接在可穿戴设备上启动 activity 的方法?

direct way to launch activity on wearable from notification action button?

我想知道是否可以通过可穿戴设备通知操作按钮在可穿戴设备上启动 activity。默认用法是可穿戴设备上的通知操作会启动手持设备上的意图。我知道我可以构建一个解决方法:在手持设备上捕捉意图并向可穿戴设备发送消息。但是没有直接的方法吗?

答:暂时不能,见"answer"下的评论。

是的,有。您可以使用 PendingIntent.getActivity,为您的 Activity 获取处理程序,在可穿戴扩展器上,您可以:

NotificationCompat.WearableExtender extender = new NotificationCompat.WearableExtender();
extender.setCustomSizePreset(Notification.WearableExtender.SIZE_FULL_SCREEN);
extender.setDisplayIntent(pedingIntent);

这会在可穿戴设备上调用您的 Activity,

无法(轻松)根据 phone 上生成的通知在可穿戴设备上启动 activity。

但是,您可以使用一些额外的代码来完成。解决方案是在通知上选择操作时在 phone 上添加 运行 代码。 phone 上的这段代码将使用数据层 API 发送消息或设置可穿戴设备正在等待的数据项。当可穿戴设备看到此传入更新时,它将在可穿戴设备上启动 Activity。

这里有一个演示如何执行此操作的示例:https://github.com/googlesamples/android-SynchronizedNotifications