阿里云 SDK 配置 請(qǐng)依官方為主 畢竟已經(jīng)很詳細(xì)了
https://help.aliyun.com/document_detail/30072.html
SDK 配置流程 :
1癣朗、導(dǎo)入下載好的 OneSDK
引入 Framework 在 Xcode 中,直接把下載 SDK 目錄中的 framework 拖入對(duì)應(yīng) Target 下即可夫啊,在彈出框勾選 Copy items if needed危号。
oneSDK 目錄結(jié)構(gòu):
- CloudPushSDK.framework
- AlicloudUtils.framework
- UTDID.framework
- UTMini.framework
- AlicloudSender.framework
- EMASRest.framework
2撑蒜、添加公共包依賴 在 Build Phases -> Link Binary With Libraries 中,引入下列的公共包:
- libz.tbd
- libresolv.tbd
- CoreTelephony.framework
- SystemConfiguration.framework
- UserNotifications.framework(iOS 10+)
- ibsqlite3.tbd
3、特殊要求
- 應(yīng)用的 targets -> Build Settings -> Linking -> Other Linker Flags稼稿,請(qǐng)加上 -ObjC 這個(gè)屬性佃却,否則推送服務(wù)無(wú)法正常使用者吁。
- 移動(dòng)推送 iOS SDK 已經(jīng)完成 ATS 適配,請(qǐng)求都以 HTTPS 發(fā)出饲帅,無(wú)需在 Info.plist 中進(jìn)行 ATS 配置复凳。
4、在AppDelegate.m 里面完成配置
- 工程引入頭文件
# import <CloudPushSDK/CloudPushSDK.h>
5灶泵、Xcode 設(shè)置
- 在 TARGET 下 Capabilities 勾選 Backgroud Modes -> Remote notifications育八,
- 主要是 iOS7 之后,蘋果支持后臺(tái)運(yùn)行赦邻,如果這里打開后髓棋,當(dāng)接收到遠(yuǎn)程推送后,程序在后臺(tái)也可以做一些處理。
6按声、常遇見的問(wèn)題:
- 在項(xiàng)目 target 中膳犹,打開 Capabilitie —> Push Notifications,并會(huì)自動(dòng)在項(xiàng)目中生成 .entitlement(?n'ta?t(?)lm?nt 權(quán)利 )文件签则。(很多同學(xué)升級(jí)后须床,獲取不到 deviceToken,大概率是由于沒開這個(gè)選項(xiàng))
Capabilitie —> Push Notifications 自動(dòng)生成 .entitlement 文件 - 確保添加了 UserNotifications.framework渐裂,并 import 到 AppDelegate豺旬,記得實(shí)現(xiàn) UNUserNotificationCenterDelegate 。
# import <UserNotifications/UserNotifications.h>
@interface AppDelegate : UIResponder <UIApplicationDelegate,UNUserNotificationCenterDelegate>