我正在構建iOS + watchOS應用程序,需要通過所有可能的iOS和Watch應用程序狀態組合的更新信息通知用戶:當iOS和watchOS都在前臺運行時,當它們都在背景,並且當其中一個或另一個在後臺時。在watchOS應用程序處於前臺時處理推送通知?
我正在成功處理這四種情況中的三種情況的推送通知。我卡住的地方是手錶應用程序在前臺打開,但iOS應用程序在後臺 - 我無法找到Watch Notification Controller,其ExtensionDelegate或iOS AppDelegate的任何方法,在這種情況下推送遠程通知。
在iOS系統中的AppDelegate,該火災時,通知推而iOS應用程序是在前臺和觀看的應用程序是在任一狀態:
func userNotificationCenter(_ center: UNUserNotificationCenter,
willPresent notification: UNNotification,
withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void)
在WatchKit擴展NotificationController,該火災時,一個通知推而iOS和觀看的應用程序都在後臺:
override func didReceive(_ notification: UNNotification, withCompletion completionHandler: @escaping (WKUserNotificationInterfaceType) -> Swift.Void) { ... }
然而,如果手錶應用程序是在中脫穎而出地面和iOS應用程序在後臺,當通知被推動時,通知橫幅出現在iPhone上(即使屏幕被鎖定),我發現沒有辦法處理它並更新手錶,除非手錶也是在那個時候的背景中。
任何想法?