2017-01-27 55 views
1

我收到了一些操作通知。我想穿上它,但没有任何行动。怎么做?如何从可穿戴通知中删除操作

builder.extend(new NotificationCompat.WearableExtender().addAction(null)); // Crashes 
builder.extend(new NotificationCompat.WearableExtender().clearActions()); // Shows actions on Wear 

回答

1

一直在寻找任何功能的可穿戴设备移除行动,但发现SO post 1SO post 2基本上指出,这是不可能去除的行动。它,然而,在Specify Wearable-only Actions如果你想在可穿戴可用的操作是从这些手持设备上的不同,然后用WearableExtender.addAction()提到

。一旦您使用此方法添加动作,可穿戴设备将不会显示任何其他添加了NotificationCompat.Builder.addAction()的动作。也就是说,只有添加了WearableExtender.addAction()的操作才会显示在可穿戴设备上,并且不会显示在手持设备上。

因此,您可以选择尝试设置仅在可穿戴设备上显示的操作。

希望有帮助!

0

正如@Teyam所说,这不是直接可能的。一种解决方法是:

  1. 使用NotificationCompat.Builder.setLocalOnly()将您的通知设置为不与手表同步。
  2. 在手表上创建一个WearableListenerService,该手表在接收到特定消息时会在那里生成本地通知(无操作)。
  3. 在生成原始通知的同时,从掌上电脑应用程序发送该消息。

我认识到,这比仅仅扩展原始通知要多得多。由您决定是否对可穿戴设备不采取行动是值得的。