注册apple id 有1年多了,这些概念还是模模糊糊的,决定在这里总结一下。
请参阅官方文档 App Distribution Guide
code singing的作用如下:
Code signing your app allows the operating system to identify who signed your app and to verify that your app hasn’t been modified since you signed it. Your app’s executable code is protected by its signature because the signature becomes invalid if any of the executable code in the app bundle changes. Note that resources such as images and nib files aren’t signed; therefore, a change to these files doesn’t invalidate the signature.
简单的说,就是保证程序的可靠性。这个机能主要用到2个文件,一个是certificate,一个是provisioning profile。
==========================================
Certificate
证明你的开发者身份。
There are different types of signing certificates for different purposes.(针对ios开发的话,就2种,详情见下面的表格)
There’s one Mac or iOS development certificate per team member. Therefore, development certificate names contain the person’s name. All other types of certificates are owned by the team (shared by multiple team members) and so, contain the team name. Individual developers are a one-person team, and so your name and the team name are the same.
Certificate type |
Certificate name |
Description |
---|---|---|
iOS Development |
iPhone Developer: Team Member Name |
Used to run an iOS app on devices and use certain technologies and services during development. |
iOS Distribution |
iPhone Distribution: Team Name |
Used to distribute your iOS app on designated devices for testing or to submit it to the App Store. |
======================================
Provisioning Profile 可以理解为 “授权文件“,在程序sign的过程中用到的就是这个文件。ios用到的provisioning profile分为3种,一种用于开发,一种用于ad hoc测试,一种用于像app store 发布。一个profile把 一个app id,一个certificate,多个devices 信息联系起来,用于对具体的ios程序进行sign。
在程序的sign过程中,不单单需要provisioning profile,还需要生成这个provisioning profile时用到的certificate,这2个文件缺一不可。