簡體   English   中英

ios中的APNS

[英]APNS in ios application

您能否告訴我在函數中接收到遠程通知時使用fetchCompletionHandler的最佳實踐:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))completionHandler

我看到人們通常在上述函數的結尾處編寫以下代碼:

completionHandler(UIBackgroundFetchResultNewData);

如果我寫:

completionHandler(UIBackgroundFetchResultNoData);

或者即使我不輸入上面的代碼,也會發生什么?

注意:我正在使用xcode7.1,objective-c,ios9.1

  • UIBackgroundFetchResult.NewData-在獲取新內容並更新應用程序時調用。
  • UIBackgroundFetchResult.NoData-在獲取新內容但沒有可用內容時調用。
  • UIBackgroundFetchResult.Failed-對於錯誤處理很有用,當無法通過獲取時調用此方法。

您必須調用此命令,以使iOS知道后台獲取的結果是什么。 它使用此信息來計划將來的后台提取。

如果您忽略此操作,則操作系統可能會延遲以后的回溯獲取。

一個很好用的例子在這里

更新 :不調用此處理程序的后果可能包括完全終止您的應用程序。

暫無
暫無

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

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