如何使用WatchKit触发通知

在WatchKit开发人员指南中 ,有关于如何呈现自定义通知的说明 ,同时还说:

应用程序不需要做任何事情来支持通知。 系统提供一个默认的通知界面,显示来自通知的警报消息。 但是,应用程序可以自定义通知界面,并包含自定义graphics,内容和品牌。

我可以获得本地通知来触发手机上的横幅提示,但是它们不会在WatchKit应用上发生。 我已经尝试使用所有的目标进行debugging:

  1. iOS应用
  2. 观看应用
  3. 观看一眼
  4. 观看自定义通知

即使电话应用程序处于后台,在收到本地通知时也不会触发。 我也试图通过模拟在后台收到的远程通知。

我希望我不必直接调用watchKit的控制器本地/远程通知处理程序。

我希望我不必直接调用watchKit的控制器本地/远程通知处理程序。

不,你不知道。

答案是XCode现在不支持同时debuggingApple Watch和iPhone。 这就是为什么你不能从iPhone模拟器推送通知到Watch模拟器,现在只支持*.apns文件的有效载荷testing。

它在通知要点解释说

iOS决定是否在iPhone或Apple Watch上显示该通知。

所以我不认为(截至目前)有任何可以从应用程序来完成触发通知专门在手表。

编辑:它看起来像8.2testing版中的错误。

WatchKit已知问题

在iOS模拟器中查看通知时,单击通知图标或正文不会启动相应的Watch应用程序

发行说明

为了testing手表通知,您必须先创build一个新的构buildscheme。

复制您的手表应用程序scheme,并在“运行”部分,select您的自定义通知作为可执行文件。

现在你可以运行通知scheme。

在项目中的扩展组内,支持文件下是一个名为PushNotificationPayload.json的文件。

您可以编辑有效载荷文件以尝试不同的通知和类别。

资源

我创build项目时只有两个目标:

  • [应用名称]
  • [app name]观看应用程序

编辑Watch Appscheme允许我select另一个可执行文件 – 特别是那里有Glance和Notification选项,它们适用于我。 只要select它,closures并运行。 我没有尝试复制目标/scheme,所以我不必编辑它们,但我不认为这会是一个问题。

编辑:其实, SDK也告诉你也要编辑这个scheme 。