UNUserNotification是否可以选择仅在Apple手表上显示通知?

时间:2017-06-19 09:03:28

标签: ios swift apple-watch

我正在开发苹果手表应用程序,它具有在每2或3或5分钟后向用户显示通知的功能。

我已经通过iOS UNUserNotification实现了此功能,而且效果非常好。

但我想要的是用户只能在Apple手表上看到所有通知,而不是在iPhone上。

现在它在iPhone和iPhone上显示Apple手表。

是否可以仅在Apple手表上显示通知?

我已为UserNotification实施了以下代码。

func scheduleNotification(at date: Date) {


        let trigger = UNTimeIntervalNotificationTrigger(timeInterval: (1*60), repeats: true)

        let content = UNMutableNotificationContent()
        content.title = "Test Reminder"
        content.body = "Show More detail in Body!"
        content.sound = UNNotificationSound.default()
        content.categoryIdentifier = "myCategory"

        if let path = Bundle.main.path(forResource: "logo", ofType: "png") {
            let url = URL(fileURLWithPath: path)

            do {
                let attachment = try UNNotificationAttachment(identifier: "logo", url: url, options: nil)
                content.attachments = [attachment]
            } catch {
                print("The attachment was not loaded.")
            }
        }

        let request = UNNotificationRequest(identifier: "textNotification", content: content, trigger: trigger)

        UNUserNotificationCenter.current().delegate = self
        UNUserNotificationCenter.current().removeAllPendingNotificationRequests()
        UNUserNotificationCenter.current().add(request) {(error) in
            if let error = error {
                print("Uh oh! We had an error: \(error)")
            }
        }
    }

提前致谢!

1 个答案:

答案 0 :(得分:2)

不,这是不可能的。 系统自动决定显示通知的位置,开发人员无法控制通知。 如果配对的iPhone被锁定且用户佩戴了Watch,则通知将显示在Apple Watch上。在任何其他情况下,通知将显示在iPhone上。

请参阅Notifications on your Apple Watch