[英]Notify the app about remote push notification when the app is not running (terminated)
當應用程序未運行(終止於非后台)並且收到遠程推送通知時,是否有任何方法可以通知應用程序有關此信息,以便該應用程序可以在本地更新某些內容(例如簡單的int計數器)?
我想存儲一些東西,以便下次啟動應用程序時,應用程序知道在應用程序未運行時已收到通知,需要執行某些操作。
如果用戶通過點擊通知來啟動應用程序,則顯然可以通過AppDelegate方法通知該應用程序,但是如果用戶通過點擊應用程序的圖標來啟動應用程序,則永遠不會調用這些方法。
為了知道用戶通過點擊圖標啟動應用程序時的通知,我需要某種方式讓應用程序知道當應用程序處於后台時已收到通知。
簡單的推送通知是您無法實現的。
根據apple docs的說法,如果用戶已通過將其刷出內存來手動殺死了您的應用程序,則在用戶選擇再次啟動應用程序之前,您的應用程序永遠不會在后台啟動以處理數據。
解決此問題的一種方法是使用VOIP推送。 根據蘋果文檔-
收到VoIP推送后,如果您的應用未運行,則會自動重新啟動。
但您有充分的理由使用它,蘋果可能會在批准在應用商店上的應用之前提出要求。
要了解有關VOIP推送的更多信息,請瀏覽此文檔-https: //developer.apple.com/library/content/documentation/Performance/Conceptual/EnergyGuide-iOS/OptimizeVoIP.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.