国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

iOS10最新實現遠程通知的開發教程詳解

2024-09-11 00:40:45
字體:
來源:轉載
供稿:網友

一、iOS推送通知簡介

眾所周知蘋果的推送通知從iOS3開始出現, 每一年都會更新一些新的用法. 譬如iOS7出現的Silent remote notifications(遠程靜默推送), iOS8出現的Category(分類, 也可稱之為快捷回復), iOS9出現的Text Input action(文本框快捷回復).

而在iOS10, 蘋果可謂是大刀闊斧般的, 對遠程通知和本地通知進行了大范圍的更新. iOS10推出了全新的UserNotifications框架(iOS10之前從屬于UIKit框架).

新的推送通知框架, 整合了本地推送和遠程推送的點擊處理方法, 使得以前專門處理推送點擊的方法只能處理靜默推送了.

二、遠程推送通知介紹

1、什么是遠程推送

在聯網的情況下,由遠程服務器推送給客戶端的通知,又稱APNs(Apple Push Notification Services)不管應用是打開還是關閉的情況下,都能接收到服務器推送的遠程通知在聯網狀態下,所有蘋果設備都會與蘋果服務器建立長連接

2、遠程推送的實現原理:

      1.打開App時: 發送UDIDBundleIDAPNs加密后返回deviceToken

      2.獲取Token后,App調用接口,將用戶身份信息和deviceToken發給服務器,服務器記錄

      3.當推送消息時, 服務器按照用戶身份信息找到存儲的deviceToken,將消息和deviToken發送給APNs

      4.蘋果的APNs通過deviceToken, 找到指定設備的指定程序, 并將消息推送給用戶

3、實現遠程推送功能的前提

      1.真機

      2.調試階段的證書

         iOS_development.cer 用于真機調試的證書

         aps_development.cer 用于真機推送調試能的證書

         xxx.mobileprovision 描述文件,記錄了能夠調試的手機、電腦和程序

      3.發布階段的證書

          iOS_distribution.cer 用于發布app的證書

          aps.cer 用于發布時,讓app有推送功能的證書

          xxx.mobileprovision 描述文件,記錄了能夠發布app的電腦

如何配置證書, 不在本教程內, 請讀者自行處理, 或者參考視頻教程

三、iOS10 全新遠程通知教程

一、 注冊遠程推送并獲取DeviceToken

1.創建iOS的項目,并輸入項目名字

2.在AppDelegate中導入頭文件:

 #import <UserNotifications/UserNotifications.h>

3.在application:didFinishLaunchingWithOptions方法中, 注冊遠程通知

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  { //請求通知權限, 本地和遠程共用 UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter]; [center requestAuthorizationWithOptions:UNAuthorizationOptionBadge | UNAuthorizationOptionSound | UNAuthorizationOptionAlert completionHandler:^(BOOL granted, NSError * _Nullable error) {  if (granted) {    NSLog(@"請求成功");     } else {     NSLog(@"請求失敗");     }    }]; //注冊遠程通知 [[UIApplication sharedApplication] registerForRemoteNotifications]; //設置通知的代理 center.delegate = self; return YES; }
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 陈巴尔虎旗| 秦皇岛市| 岳池县| 荣昌县| 高雄县| 稻城县| 醴陵市| 平泉县| 德清县| 潜江市| 白玉县| 博罗县| 吉水县| 鲁山县| 铜陵市| 东丰县| 根河市| 怀柔区| 延长县| 静乐县| 郧西县| 区。| 株洲市| 芦山县| 城口县| 会理县| 双辽市| 正镶白旗| 乌苏市| 健康| 泽州县| 仪征市| 芜湖县| 洮南市| 迁安市| 临颍县| 赫章县| 彰化市| 安徽省| 电白县| 夹江县|