2

我構建並啓用了後臺模式的應用程序,並且應用程序獲取的推送通知有效內容具有「內容可用」鍵。如何處理啓用後臺模式的遠程通知

這種設置在didReceiveRemoteNotification結果被稱爲EVERY TIME應用得到一個推送通知,這意味着如果我得到3個推送通知,而該應用程序在後臺 - 該功能將火裏面3次,代碼將被執行時,應用程序將applicationDidBecomeActive

我最大的問題是,有沒有辦法知道,如果一個用戶點擊了推送系統警報或竊聽的應用圖標,從後臺的應用程序,因爲無論用戶的動作,didReceiveRemoteNotification將觸發。

有沒有辦法確定用戶點擊Sys警報?

這:http://samwize.com/2015/08/07/how-to-handle-remote-notification-with-background-mode-enabled/ 和其他的答案似乎 不會有所幫助

回答

-1
For app is background push 
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo 
{ 
    if (application.applicationState == UIApplicationStateInactive || application.applicationState == UIApplicationStateBackground ) 
    { 
     //opened from a push notification when the app was on background 
    } 
} 

For app is terminate state 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

    if (launchOptions != nil) { 
     // Launched from push notification 
     NSDictionary *notification = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]; 

    } 
} 
+0

親愛的主席先生,不幸的是你的答案不能解決我的問題,因爲,正如我的問題的狀態,有沒有辦法區分用戶點擊通知提示和一般情況下的「didReceiveRemoteNotification」。因爲BackgroundMode啓用'didReceiveRemoteNotification'被調用來接收每個推送通知。所以,如果我得到3推,並在背景中的應用程序,我點擊應用程序**圖標**'didReceiveRemoteNotification'被稱爲**三次** –

相關問題