我收到了一些动作通知。我想在穿着时展示它,但没有任何动作。怎么做?
builder.extend(new NotificationCompat.WearableExtender().addAction(null)); // Crashes
builder.extend(new NotificationCompat.WearableExtender().clearActions()); // Shows actions on Wear
答案 0 :(得分:1)
一直在寻找删除可穿戴设备中的操作的任何功能,但找到SO post 1和SO post 2,这基本上说明无法移除操作。但是,在Specify Wearable-only Actions中提到了
如果您希望可穿戴设备上的可用操作与掌上电脑上的操作不同,请使用
WearableExtender.addAction()
。使用此方法添加操作后,可穿戴设备不会显示添加了NotificationCompat.Builder.addAction()
的任何其他操作。也就是说,只有WearableExtender.addAction()
添加的操作才会出现在可穿戴设备上,并且它们不会出现在掌上电脑中。
这样,您可以选择尝试设置仅在可穿戴设备中显示的操作。
希望有所帮助!
答案 1 :(得分:0)
正如@Teyam所说,这不是直接可能的。一种解决方法是:
NotificationCompat.Builder.setLocalOnly()
将通知设置为不与手表同步。WearableListenerService
,在收到特定消息时会在那里生成本地通知(没有操作)。我认识到这比简单地扩展原始通知要多得多。由您决定是否对可穿戴设备采取行动是值得的。