2017-09-06 46 views
0

我知道如何提高本地通知並在其上顯示操作。當用戶點擊行爲我能應付下面的方法:是否有可能瞭解什麼時候通知迅速提出3?

func userNotificationCenter(_ center: UNUserNotificationCenter, 
didReceive response: UNNotificationResponse, withCompletionHandler 
completionHandler: @escaping() -> Void) { 
    // Do something here 
    if response.notification.request.content.userInfo["backUp"] { 
    doBackUpHere() 
    // Do other methods 
    } 
} 

然而,我的情況有點不同。在點擊它之前或在它的動作(應用程序是前景或背景)之前發出通知時,我需要執行一些功能。其他方法,當用戶點擊運行通知

func notificationRaised (notification: Notification){ 
    // to do if notification is 
    if notification.userInfo["backUp"] { 
    doBackUpHere() 
    } 
} 

更新

請參閱@Sergey答案,我們的意見,以更好地理解我的提議。

回答

1

如果我正確理解您的問題,您希望在通知到達時執行操作,而無需任何用戶輸入。如果是這樣,我建議你看看silent push notifications in iOS - 不幸的是,他們只是這麼做,並沒有在用戶界面中顯示。

您也可以在計時器上嘗試本地通知,但請記住,只有當用戶點擊通知和/或其某個操作時,才能運行代碼,因爲該應用程序不能保證在顯示預定的本地通知。

+0

是的,你正確理解我的問題。 [Apple文檔](https://developer.apple.com/library/content/documentation/General/Conceptual/WatchKitProgrammingGuide/BasicSupport.html)表示它僅用於服務器通知。我需要本地通知。我必須打開推送通知,這不是我的目標。 –

+0

@AmirShabani明白了。所以基本上你不能在這裏做任何事情,因爲當你實際發送通知**時,你永遠不會知道你的應用是否還活着。 –

+0

你的意思是在提出通知時沒有辦法理解?它可以幫助我瞭解何時提出通知。像Android –

0

你聽說過'無聲推送通知'?我認爲這正是你正在尋找的;)你可以得到這個通知,做你的東西,然後顯示本地通知,如果你想。

+0

非常感謝。但是,我發現使用靜默推送通知我需要使用推送通知,這不是我的目標。你有無聲推送通知的好資源嗎? –

相關問題