1

我正在为我的 Android 电子邮件应用程序 (Aqua Mail) 开发 SmartWatch 扩展程序。

旧的 LiveWare API 可以做到的,而我找不到新的 SmartWare API 的方法是:

...能够将唯一的每个事件不透明 ID 从我的应用程序传递到 SmartWare,并在处理用户操作时获取它。有一个 sourceId,但在我的情况下,它对应于一个邮件帐户,而不是一个单独的消息。

其动机是实现特定于消息的操作,例如能够直接从 SmartWatch 将单个消息标记为“已读”,或者从 SmartWatch 在手机上打开它。

4

1 回答 1

1

我猜你想实现一个通知扩展。要传递您自己的每个事件 ID,请使用事件表中的 FRIEND_KEY 列。这在 SmartExtensionAPI 库的 Notification.EventColumns.FRIEND_KEY 中定义。

你也可以:

  • 获取 Smart Connect 为特定事件设置的唯一 ID
  • 定义您自己的一组要对事件执行的操作(每个源最多三个操作)

当用户在 SmartWatch 上读取事件时,该事件将在内部 SmartConnect 数据库中自动标记为已读。如果用户选择对事件执行操作,通过向下滚动并按下操作,您的扩展程序将通过 VIEW_EVENT_INTENT 意图收到有关操作的通知。意图包括有关事件 ID、源 ID 和用户选择的操作的信息。然后,您可以轻松获取 FRIEND_KEY,并执行您定义的操作。

查看Sony Add-on SDK中包含的 SampleNotification 扩展,这里还有关于智能扩展 API 的其他文档。

希望这会有所帮助,干杯!

于 2013-05-03T06:41:47.663 回答