iOS推送分爲開發環境和生產環境,在推送證書的type上分別對應 APNs Development iOS 和 Apple Push Service。在開發者帳號中建立AppId以後「Edit your App ID Configuration」的時候,若是勾選了Push Notifications,那麼就能夠在這個選項下直接配置測試、生產推送證書。git
推送證書是給App服務端使用的,業務服務端拿着這個推送證書和推送消息與蘋果的APNs交互,完成業務上消息的推送。從上面的過程能夠看出,建立推送證書主要須要AppId + CSR文件。github
從建立證書界面可見,建立的證書包括兩類:爲APP開發時,編譯打包使用的證書,也分開發、生產證書;爲APP提供服務的一類證書,好比推送證書,即推送證書也能夠在這建立。微信
注:其中有一個選項是 iOS Distribution (App Store and Ad Hoc),注意理解。閉包
建立一個開發證書: 工具
從上面的過程能夠看出,建立一個用於編譯打包的證書,只須要上傳一個CSR文件,無需指定其餘信息。測試
在APP開發過程當中,開發和發佈都須要建立對應的Provisioning Profile,這個描述文件也有不一樣的類型:優化
從上面的步驟中能夠看出,建立一個AdHoc 的 Provisioning Profile 須要的信息有:AppId、相應的打包證書(Distribution型)、選擇可安裝該APP的設備。因此,是描述文件將AppID、證書、APP、設備聯繫到了一塊兒,而推送證書和打包證書沒什麼直接關係。具體的描述文件、證書、App的安裝過程請參考文章:iOS 簽名機制動畫
若是想在發佈APP前,再作最後線上環境推送流程測試,用正式發佈是的生產證書和描述文件打包時,是不能直接裝到iOS設備上的。想測試線上環境推送只能選用AdHoc的方式,若是直接用Xcode運行裝載到設備上,那就在工程配置中選擇AdHoc的描述文件,真機編譯運行(不會順利運行至應用界面,等到應用天然崩潰),裝載完成便可進行推送測試。網站
若是選擇代理網站分發,須要打出ipa包,則在Xcode中打包時選擇Product -> Archive -> distribute,會有如下界面:
將ipa包裝至真機,便可進行測試。
瞭解更多iOS及相關新技術,請關注咱們的公衆號:
小編微信:可加並拉入《QiShare技術交流羣》。
關注咱們的途徑有:
QiShare(簡書)
QiShare(掘金)
QiShare(知乎)
QiShare(GitHub)
QiShare(CocoaChina)
QiShare(StackOverflow)
QiShare(微信公衆號)
推薦文章:
Swift 5.1 (9) - 結構體和類
Swift 實現一個兼容iOS、tvOS、OSX的抽象層
iOS Password AutoFill
iOS 給UILabel添加點擊事件
用SwiftUI給視圖添加動畫
用SwiftUI寫一個簡單頁面
Swift 5.1 (7) - 閉包
iOS App啓動優化(三)—— 本身作一個工具監控App的啓動耗時
iOS App啓動優化(二)—— 使用「Time Profiler」工具監控App的啓動耗時
iOS App啓動優化(一)—— 瞭解App的啓動流程
奇舞週刊