簡體   English   中英

當用戶強行退出應用程序時處理iOS的推送通知(替代方法?)

[英]Handling push notifications iOS when app is force-quit by user (Alternatives?)

我有一個在iOS的推送通知的問題,類似的詩情到這個這個另外一個

另外, 此帖子將恢復所有可能的情況。 就我而言:

  • 應用未運行
  • 內容可供選擇:1
  • UIBackgroundModes包含“遠程通知”和“獲取”

如果用戶強行退出應用程序並收到推送通知,則它可能會從警報或圖標中打開應用程序。 當用戶點擊通知時,將打開該應用程序,並將執行以下方法:

- (BOOL) application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Handle for notifications when app is closed
    if (launchOptions) { 
        NSDictionary *userInfo = [launchOptions valueForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
        NSDictionary *apsInfo = [userInfo objectForKey:@"aps"];

        if (apsInfo) { 
            // handle notification 
        }

    }

到這里沒有問題,我有足夠的能力來處理該信息(例如,從服務器獲取新數據)。

但是,如果用戶從圖標打開應用程序,我將無法處理任何有效負載(盡管執行了didFinishLaunchingWithOptions,但根據此處的文檔,我沒有aps信息)。

那么,問題是,有什么辦法可以解決? 例如,我使用WhatsApp進行了測試,然后他們處理了這種情況(可能他們使用的是VOIP通知而不是遠程通知)

問候

在傳遞通知和用戶啟動應用程序之間,您永遠不應假定狀態保持一致。 甚至也不是同一台設備。 我會經常收到“嘿!做點事!” 通知在我的手機上,如果我的iPad方便,請在我的大iPad屏幕上回復它。

相反,您應該往返於服務器並在應用程序啟動或激活時為該用戶獲取最新狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM