簡介
APNS全稱Apple Push Notification service
說明
- 此文以極光推送來舉例,相信其它原理相同.
- 支持到 iOS10.0
- 全部為筆者今天測試結(jié)論,如有變化,請注意日期
- 測試環(huán)境:
- Xcode 8.2,
- iOS 10.2 & iOS 9.2.1
- 本系列包括三大部分:
遠(yuǎn)程推送
集成遠(yuǎn)程推送證書
- 新建
App Id
, 如此處name:
name.png
注: 請忽略此處的數(shù)字2
,因為筆者之前有些沒截圖,重新創(chuàng)建的.
- 依次勾選
Suffix
勾選推送
App Id.png
選擇
register
,done
點擊剛創(chuàng)建的
App id
app id
沒有配置證書
- 選
edit
.此處可以看到需要配置兩個證書.為什么是兩個呢?- 一個是開發(fā)證書,開發(fā)階段使用,即調(diào)試期間
- 一個是生產(chǎn)證書,即app發(fā)布時使用的是這個證書
- 先配置開發(fā)證書
需要配置的開發(fā)與生產(chǎn)證書
選擇
create certificate
,continue
, 可以看到上傳CSR的提示-
2 配置CSR, 打開
keychain
請求證書.png -
上傳CSR
csr
此時開發(fā)證書已經(jīng)配置完成, 下面使用開發(fā)證書配置用于開發(fā)p12文件
- 下載上面的開發(fā)證書并安裝
開發(fā)證書
安裝在keychain中
導(dǎo)出p12
注:
- 證書名稱中包含
bundle id
, 注意是否與自己第1步中新建的appleID
一致, 請忽略筆者此處的不匹配. - 導(dǎo)出p12時,需要輸入兩次密碼
- 第一次是設(shè)置當(dāng)前p12的密碼與確認(rèn)密碼, 如輸入123456
- 第二次輸入的是你的mac的開機密碼,如:
cuiyuhe
接下來的步驟
- 導(dǎo)出的p12如下:
開發(fā)環(huán)境下的p12文件
相同的步驟導(dǎo)出開發(fā)階段使用的證書.
- 此時檢查:
-
App Id
是否配置正確
都是綠色標(biāo)志
- 上傳p12 到極光相應(yīng)的項目,密碼輸入剛設(shè)置的
123456
上傳開發(fā)與生產(chǎn)證書
注: 如果沒有顯示'已驗證', 重復(fù)上面步驟配置
配置Xcode 需要的 開發(fā)development 與 生產(chǎn)distribution 證書
provisioning profiles下面
- 選擇
development
, 點擊+ - 選擇iOS app dev, 點擊
continue
iOS app dev
- 選擇相應(yīng)的app id
- 選擇相應(yīng)的開發(fā)者,直接全部選擇
- 全選設(shè)備, 輸入名稱, 下載安裝
- 在xcode 8.2 中選擇剛安裝的開發(fā)證書.此處將xcode 8.2自帶的
auto manage signing
干掉
將自動選擇干掉
配置 distribution
證書
- 此處為
adHoc
: 就是可以發(fā)布到第三方網(wǎng)站上面,供當(dāng)前apple Id 注冊的設(shè)備下載測試的證書.是發(fā)布證書的一種. - 如果發(fā)布到
app Store
時, 此處應(yīng)選擇app store
- 選擇adHoc
adHoc
- 同配置
dev
證書, 不停continue
,下載安裝,在Xcode 中選擇:
選擇生產(chǎn)證書
Xcode 8.2 可以自動識別,如果發(fā)生了錯誤,證明證書配置錯誤,再根據(jù)以上步驟檢查.
Xcode 中的設(shè)置
-
打開推送
打開推送 -
打開后臺推送
打開后臺推送