開發者證書 ------>> 
首先你必須獲得apple開發者證書,上圖這個文件就是apple開發者證書,只要有apple的開發者賬號就可以下載到,此證書可以直接到
developer.apple.com -->
Member Center -->
Certificates, Identifiers & Profiles, Certificate -->
Certificates --> Add Certificates 里面下載到, 如下圖:

那么這個文件有什么用處? 后文再說!
其次需要理解 Certificate, Identifier, Devices, Provisioning Profiles
Certificate
用於給應用程序簽名(只有簽名過的應用程序才能保證其來源是可信任的,代碼是完整的,未經修改的), 在項目的Project | Targets -----> Build Settings -----> Code Signing Identity里面指定, 如下圖:

我們如何給應用程序簽名?
申請Certificate之前需要申請一個 Certificate Signing Request(CSR) 文件,這個文件是保存在我們的mac的(keychain)里面的, 此文件包含了(公鑰和私鑰), 而我們的應用程序簽名是使用私鑰來簽名用公鑰來進行驗證, 而蘋果生成的Certificate 只包含了公鑰, 當你用自己的私鑰簽名后,蘋果會用公鑰來進行驗證,確保是你自己對程序簽名而不是別人冒充的。
- 首先是申請CSR文件,打開Keychain Access, 如下圖:

注意下圖的 Request a Certificate from a Certificate Authority …
如果沒有這個選項的話,還記得文章開頭的那個AppleWWDRCA.cer證書么,對了就是它,安裝它后就OK啦

- 再然后common name隨便填, CA Email Address 留空, 再點擊continue 繼續

那么上一步說的CSR文件包含了public key 和 private key我們就可以在Keychain Access里面看到了, 如下圖:

CSR文件生成之后就要生成Certificate了, 進入Developer頁面(Certificates, Identifiers & Profiles) --> Certificates ---> +
- 選擇證書類型 (Development or Production)
- 上傳提供之前創建的 Certificate Signing Request(CSR)文件
- 下載生成好的Certificate 文件
- 雙擊安裝(特別提示:如果以前有安裝過此開發者證書且名字相同,雙擊安裝極有可能不生效,需要做的是直接把此Certificate文件拖入到Keychian Access的Login里面,當然如果以前的沒用的可以刪除, --- 通過搜索iphone developer可以找到)
Identifier:
作用?
顧名思義App ID(application id, not apple id), 對於你的一個或者一組app他們的唯一標識, 這個App ID跟你Xcode中的Targets -----> General-----> Identity中的Bundle Identifier是匹配的,(
其余的那些推送服務啊什么的都是配置在APP ID下面的) 如下圖:

Provisioning Profile
一個Provisioning Profile包含了上述所有內容 Certificate && App ID && Device, 這個Provisioning Profile文件會在打包時嵌入到.ipa的包里,如下圖:
所以一台設備上運行應用程序的過程如下(以Developer Provisioning Profile為例):
1 檢查app 的 bunld ID 是否 matches Provisioning Profile 的 App ID
2 檢查 app 的 entitements 是否 matches Provisioning Profile 的 entitements
3 用Certificate來驗證簽名簽名
4 檢查此設備的UDID是否存在於 Provisioning Profiles中 (僅在 非發布證書中)
如何創建?
在 Provisioning Profiles 中點加號,然后依次選擇App ID, Certificate, Devices(development),再指定名稱,最后下載, 雙擊則安裝到Xcode中
Xcode中的配置
Project && Target 的 build settings 中搜索Code sign…
然后分別選好對應的證書,如果選擇列表中沒有剛才創建的證書可以雙擊直接復制名字上去

關於推送服務
基於上面的操作,如果需要推送服務我們還需要申請一個推送證書
依次進入 Certificates —>Production —>Apple Push Notification service SSL (Production)
然后選擇需要推送服務的App ID
再選擇前面創建的.cerSigningRequest文件
最后點擊generated生成推送證書