【问题标题】:direct way to launch activity on wearable from notification action button?从通知操作按钮启动可穿戴设备活动的直接方法?
【发布时间】:2015-06-26 14:11:48
【问题描述】:

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

回答:目前不可能,请看标有“回答”下的cmets。

【问题讨论】:

    标签: android android-intent android-activity android-notifications wear-os


    【解决方案1】:

    不可能(轻松)根据手机上生成的通知在可穿戴设备上启动活动。

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

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

    【讨论】:

    • 但是仍然需要一个单独的可穿戴应用程序,我错了吗?
    • 是的,你需要在可穿戴端维护一个应用程序来实现这一点。
    【解决方案2】:

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

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

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

    【讨论】:

    • 不幸的是,我的通知是在手持设备上创建的。 “您只能在可穿戴设备上创建和发布自定义通知,系统不会将这些通知同步到手持设备。”
    • 我以为你有一个可穿戴应用程序,不是吗?
    • 我愿意,但我希望手持设备上的应用程序创建一个带有操作按钮的通知,以启动谷歌地图导航。但是,使用可穿戴扩展器只能在手持设备上启动活动,而不能直接在可穿戴设备上启动。
    • 不,你不能。您需要处理双方的通知。要敏锐的通知本地使用setLocalOnly
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多