证书,发布相关知识

开发/真机调试流程:

  • 申请证书

  • 加入设备

  • 生成Provisioning Profile

  • 设置Xcode Code Sign Identifer

发布流程:

  • 创建发布证书

  • 创建App ID

  • 创建对应的Provisioning Profile文件

  • 设备Bundle IDApp ID一致

  • 设置Xcode Code Sign Identifer,选择合适的Profile和证书进行签名,打包


App development:

  • Certificates:证书,常用的证书类型有4种:真机调试证书、推送调试证书,发布证书、推送生产证书。

  • Identifiers:AppID,跟项目工程的 BundleId 匹配,需要支持推送、Game Center 等功能的 AppID 不能包含通配符*。

  • Devices:iOS设备在真机调试、AdHoc发布时都需要包含设备的 UDID 才可以安装。

  • Provisioning Profile:配置文件(描述文件),不同类型的开发者账号都包含 Development、AdHoc 这两种 Profile,不同的是个人、公司开发者账号有发布到 AppStore 的 Profile,而企业开发者账号则是 InHouse 企业内发布的 Profile。


Certificate(证书):

Certificate是你有权利开发的凭证,是开发者的一种标识,相当于***,一个开发者账号只有一套。一套含两个,DevelopmentDistribution(也就是Production)


Development证书:提供开发者在电脑上真机调试的权限,可以制作多个副本分发到多台电脑。


Distribution证书:给开发者提供发布ios程序的权限,也就是说有了这个,你就有权力发布程序到App Store去了。只有一个,不能制作副本分发到多台电脑。


Development

              App Development (1):用来开发和真机调试应用程序。

              Push Development (1):用来调试Apple Push Notification

Production

              In-House and Ad Hoc (3):用来发布In-HouseAdHoc的应用程序。

  • App Store :用来发布提交App Store的应用程序。

      MDM CSR Push Production (1):用来在发布版本中使用Apple Push Notification Pass Type ID Certificate

        Website Push ID Certificate


(CSR) 文件:

CSR:申请一个Certificate之前,需要先申请一个 (CSR) 文件,而这个过程中实际上是生成了一对公钥和私钥,保存在你MacKeychain中。代码签名正是使用这种基于非对称秘钥的加密方式,用私钥进行签名,用公钥进行验证。


App ID:

App ID:App ID用于标识一个或者一组App,App ID应该是和Xcode中的Bundle ID是一致的或者匹配的。

  • Explicit App ID:唯一的App ID,这种App ID用于唯一标识一个应用程序,例如com.ABC.demo1,标识Bundle IDcom.ABC.demo1的程序。

    Wildcard App ID:通配符App ID,用于标识一组应用程序。例如*可以表示所有应用程序,而com.ABC.*可以表示以com.ABC开头的所有应用程序。


Provisioning Profile:

Provisioning Profile一个Provisioning Profile文件包含了上述的所有内容:证书、App ID、设备。

wKiom1bOcCnSQTNSAAKAEsjHkjU223.png

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章