回答
在didReceiveRemoteNotification中創建並初始化NSDate對象。 NSDate * notificationDate = [NSDate日期]應該工作。
在您的應用程序委託的application:didReceiveRemoteNotification:fetchCompletionHandler:
中,使用當前日期創建一個NSDate
,然後將其保存在NSUserSettings中的數組內或直接在裏面。
有了這個,您甚至可以收到通知的歷史記錄,並可以稍後處理它們。
application:didReceiveRemoteNotification:fetchCompletionHandler:
只有當您將具有值1的content-available
鍵添加到通知有效負載中時纔會在後臺調用。
從蘋果文檔:
對於推送通知來觸發下載操作時,通知的有效載荷必須包括其值設置爲1,當該鍵存在的內容可用鍵,系統喚醒應用程序在後臺(或將其啓動到後臺)並調用應用程序委託的應用程序:didReceiveRemoteNotification:fetchCompletionHandler:方法。您實施該方法應下載相關內容並將其集成到您的應用中。 https://developer.apple.com/library/prerelease/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html
這提供了通過通知打開應用程序的日期,而不是通知在設備上實際收到時的日期。 –
@thefredelement更新了我的答案; D –
看起來很有希望,我會更新有效負載並檢查它並接受它是否正常工作,謝謝! –
如果您控制連接到APNS的後端,並在didReceiveRemoteNotification中解析它,您可以將自定義發送日期字段添加到通知有效內容。很顯然,這會讓你獲得發送遠程通知的日期,但沒有收到,但總的來說差別很小。
建議使用'content-available'鍵的解決方案可能不是您想要的,因爲它會在此類通知的後臺啓動應用程序,並可能導致您的應用程序在Settings.app>電池>電池使用情況。它也將在低功耗模式下停止工作,或者用戶禁用後臺應用程序刷新。
後臺應用程序刷新和「內容可用」鍵適用於在後臺下載內容的應用程序。如果您的應用沒有這樣做,請不要使用它們。
您在這裏提出了一些重要的觀點,最初我只是在我自己的測試中使用它來提出一些指標。我注意到一些使用Parse的重要延遲,並希望切換到我完全控制的本地通知,並查看其中的差異。 –
如果問題僅用於測試,請假裝您的應用正在使用VoIP,使用VoIP證書並使用PushKit進行註冊。所有通知將在後臺啓動您的應用程序,並且didReceiveNotification委託方法的PushKit等價物將立即被調用,始終不會涉及用戶交互。 –
您可以通過查看系統(而非應用程序)控制檯來查看何時收到推送通知。看來新版iOS版本過濾日誌,但如果你殺了你的應用程序事先你會看到這樣的事情
Jun 1 17:55:38 Aarons-iPhone-6-Plus SpringBoard[657] <Warning>: High Priority Push: net.test.test - App killed –
- 1. 在到期日期前收到通知
- 2. 獲取upcomming過期日期通知和SQL中獲取日期
- 3. 獲取遠程PC的日期時間?
- 4. 如何獲取遠程通知計數
- 5. 獲取郵件收到日期JavaMail
- 6. 處理遠程通知接收在ios
- 7. 獲取日期從文件上傳到遠程FTP服務器
- 8. 獲取連續日期的收集
- 9. 爲什麼我收到遠程通知時不會發送本地通知?
- 10. Android Studio,如果接近位置,會收到日期通知
- 11. 遠程通知Ios
- 12. Pushwhoosh遠程通知
- 13. 推遠程通知
- 14. 與遠程通知
- 15. 如何定期收到通知?
- 16. 如何獲取所有待處理遠程通知的數組?
- 17. 使用javascript獲取遠程URL的最後修改日期
- 18. 獲取遠程文件的最後修改日期
- 19. 獲取遠程文件的修改日期
- 20. 從具有日期屬性的對象獲取通知
- 21. 如何獲取ios上的所有收到的通知
- 22. iOS 8的遠程通知
- 23. 通過日期獲取顛覆日誌
- 24. 過程獲取日期在
- 25. 如何通過接收日期desc獲取郵件訂單
- 26. 獲取時區知道日期時間
- 27. 如何通過C#代碼獲取證書的到期日期?
- 28. 取消遠程通知,讓它不顯示在通知中心
- 29. 發送TFS收到的通知獲取最新版本
- 30. 獲取收到的推送通知數量?
當應用程序是通過點擊遠程通知打開的方法只調用,當它實際上不是接收。 –