IOS开发 证书总结

开发者证书   ------>> app


 

首先你必须得到apple开发者证书,上图这个文件就是apple开发者证书,只要有apple的开发者帐号就能够下载到,此证书能够直接到iphone

developer.apple.com -->ui

    Member Center -->spa

      Certificates, Identifiers & Profiles, Certificate -->code

        Certificates  -->  Add Certificates 里面下载到, 以下图:xml

那么这个文件有什么用处? 后文再说!ip

 

其次须要理解 Certificate, Identifier, Devices, Provisioning Profiles开发


 

Certificateget

用于给应用程序签名(只有签名过的应用程序才能保证其来源是可信任的,代码是完整的,未经修改的), 在项目的Project  |  Targets -----> Build Settings -----> Code Signing Identity里面指定, 以下图:it

 

 

咱们如何给应用程序签名?
 
    申请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 继续

 

  • OK, CSR文件就生成了

那么上一步说的CSR文件包含了public key 和 private key咱们就能够在Keychain Access里面看到了, 以下图:

 

 

CSR文件生成以后就要生成Certificate了, 进入Developer页面(Certificates, Identifiers & Profiles) --> Certificates ---> + 

    1.     选择证书类型     (Development or Production)
    2.     上传提供以前建立的 Certificate Signing Request(CSR)文件
    3.     下载生成好的Certificate 文件
    4.      双击安装(特别提示:若是之前有安装过此开发者证书且名字相同,双击安装极有可能不生效,须要作的是直接把此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生成推送证书 
相关文章
相关标签/搜索