無論iPhone還是安卓,我們用到的所有應用基本都有推送通知服務,因爲這是應用很好的推廣方式,有新產品了、有新更新了通知下用戶及時查看。但Apple有點特殊,它的推送需要發到蘋果服務器上中轉一下,這就是蘋果的推送通知服務APNs(Apple Push Notification service),例如友盟,極光之類的推送服務都是向APNs推送消息,APNs再將消息推送給設備的,並不像安卓那樣直接找到設備發送消息;蘋果需要驗證是否含有證書,有證書才能發送;現在我們就看看推送證書如何創建:
注:首先說明我們創建推送證書建立在已有APP ID的情況下,一般APP ID創建是一個項目開發首要的,最基本的,如不清楚的自行百度
1、首先登錄自己的開發賬號,進入iOS Certificates證書中心,點擊Certificates 下的All,這時點擊右上角的“+”號增加證書,如下圖:
2、進入選擇證書類型頁面,這裏有創建開發證書、發佈證書、推送開發證書、推送生產證書,筆者賬號開發證書和發佈證書都已建滿,所以呈灰色,但推送證書(帶Push)正常,一般推送的開發和生產證書都需要,開發證書供開發時候用,生產證書發佈時用,兩種後面的步驟一致,所有在這就不重複介紹,只選擇一種,選擇好證書類型,點擊下面的Continue按鈕:
3、選擇你需要創建推送證書的應用的APP ID,點擊Continue:
4、進入Create a CSR file 頁面,直接Continue:
5、這時會讓你選擇CSR file,但是CSR file我們暫時還未創建,所以我們得先創建CSR file,再進行下一步:
6、在Mac電腦上打開鑰匙串訪問:
7、點擊菜單中的鑰匙串訪問—>證書助理—>從證書頒發機構請求證書...
8、進入證書助理頁面,選擇存儲到磁盤,電子郵件地址隨便填,點擊繼續:
9、這時就創建好了CSR file文件了,桌面出現如下圖標:
10、接下來我們回到第5步,選擇好剛創建的CSR file,點擊Continue:
11、這時證書已經創建好,回到iOS Certificates證書中心頁面,我們就可以看到我們創建的兩個證書(開發與生產),後面還有到期時間:
12、我們已經創建好證書了,接下來就是安裝證書了,點擊Download下載,雙擊證書,注意一定要雙擊,開發、生產證書都是一樣的,這樣推送證書就安裝好了,可以去鑰匙串看到:
13、我們已經創建了證書也已經安裝好了證書,但是我們集成的一些第三方平臺,如極光推送,還需要我們上傳證書到它們平臺,但它們要的證書並不是我們之前創建的,而是需要
.p12
文件的證書,這就需要我們從鑰匙串導出.p12
格式,生產、開發都需要,操作如下:14、把上面導出的證書上傳到第三方平臺就可以,上傳成功會提示已驗證,這時就可以集成SDK,發送推送了:
有人注意到推送證書有時間期限的,是的,是有有效期,有時我們應用突然接不到消息了,有可能就是證書過期了,有效期一般爲1年左右,那有效期快過了怎麼處理呢?
解決方案:
1、刪除MAC上鑰匙串訪問中對應的推送證書
2、去開發者中心刪掉過期推送證書,重新按着上面的步驟重新來一遍
3、在第三方平臺上重新上傳新的.p12證書
已上線的應用也是一樣,刪掉證書不會影響推送,只要對應的APP ID是一樣的!
聲明: 轉載請註明出處http://www.jianshu.com/p/ca8df77ee18e
作者:傑森_Jason
鏈接:https://www.jianshu.com/p/ca8df77ee18e
來源:簡書
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。