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