做基于Adobe Air的iOS应用开发需要做的证书准备

这个步骤,我去年的时候,和几年分别重复过若干次,应该趁着还记得,赶快纪录一下这个步骤,让我理清一下思路。

我是需求式的学习,所以我先要遇到一个需求,下面的截图就是我想用Flash Builder发布一个iOS应用时候的需求。

[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-019.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-019.png)
可见,我需要两个文件,一个是扩展名为.p12的证书文件,另外一个是扩展名为.mobileprovision的应用配置文件,一个用来确认你的开发者身份,一个用来确认你的应用身份。需要注意的是:这里列举的所有步骤,其实不仅限于用Air做开发,利用任何第三方框架开发iOS程序都需要这个步骤。

去developer.apple.com注册一个Apple ID,如果你之前通过iCloud,App Store等任何苹果相关网络产品注册过,都是ok的,这个过程没有什么难度,可以随意发挥。

[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.00.52.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.00.52.png)
注册成为一个Apple Developer, 这个部分也没什么好说的,会让你选择要作为哪种开发者,iOS,Safari,或者Mac OS,随便填吧,成功后,你会来到Developer的主页(付费的部分我就不罗嗦了,首先……你要有一张……能做美金支付的……信用卡)。
下面就是值得注意的地方了,要在ios平台发布一个应用,首先你需要一个开发者证书, 他存在, 你系统的钥匙串里, 你的项目里, 你的电脑里 你的发布文件里, 入口在在主页的Certificates, Identifiers & Profiles 部分。
[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.16.33.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.16.33.png)
进入证书和识别码区域之后,会看到证书部分是默认被第一个显示的。证书分成两种,开发用和发布用的,通过点击那个再明显不过的加号可以进行添加。
[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.26.46.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.26.46.png)
当点击了添加按钮后,会询问你需要哪一种证书,目测只有iOS App Development 和App Store and Ad Hoc是我需要的,所以请毫不犹豫的选择其中的一个并continue。
[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.33.01.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.33.01.png)
下面的界面会告诉你应该如何生成一个CSR请求(Certificate Signing Request (CSR)),这里直接听我讲吧,打开你的 钥匙串访问 应用,然后象下面一样选择菜单
[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.39.07.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.39.07.png)
然后,在这个界面里面填写好你的email,就是你注册AppleID时候的那个邮件,选择存储到磁盘。你就有了这样一个证书请求文件了CertificateSigningRequest.certSigningRequest
[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.44.49.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-16%252520%2525E4%2525B8%25258B%2525E5%25258D%25258810.44.49.png)
将这个文件,按照提示上传上去,你就可以获得一个开发用的证书了。点击下载这个证书,你会得到一个扩展名为.cer的证书文件。
[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%2525889.50.59.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%2525889.50.59.png)
双击该文件,或者在钥匙串访问应用中导入它,你会在我的证书视图中找到它,下面要利用钥匙串将这个证书导出为个人信息交换文件,也就是利用AdobeAir发布iOS应用时所必须的证书文件。到目前为止我需要的第一个文件准备好了。
[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%2525889.58.18.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%2525889.58.18.png)
下面就是搞定.mobileprovision的应用配置文件了,这部分的操作在开发者视图中的Provisioning Profile部分,有两种大类型开发用和发布用,我需要的是开发用的,一个mobileprovision配置文件,对应的是一个App ID,一组作用设备列表(仅限开发用证书,发布的不用指定设备),先从注册一个App ID入手,它在Identifiers视图中。
这个部分也比较好理解,App ID就是你的App在itunes中发布时,作为唯一识别的标识。

创建一个id的视图分成三个部分,第一部分是你如何描述你的应用,便于你自己识别它,所以先要给它一个描述性的名字。App ID Prefix是系统分配给你的一个唯一编码,它将连同你的命名一起确保你证书的唯一性和正确性。

[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%25258810.29.15.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%25258810.29.15.png)
第二部分需要你决定你的id是作用于一个单个应用,还是同一公司下所有对应应用均可使用的通配符id,我以前者为例。 这里的Bundle ID最常见的命名办法,就是反转你的公司域名+应用名字,这是重名几率最低,可辨识度最高的方式(至少我认为是)例如:com.yourcom.appname
[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%25258810.30.47.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%25258810.30.47.png)
最后一部分,需要你选择想要在应用中使用哪些Apple的内置服务,比如: GameCenter(当然你可以不用它的排行榜), iCloud(当然你可以不用它的云端存储), In-App Purchase(当然你也可以不用它的应用内支持)。 填写好这些部分后,就可以提交,恭喜你一个App ID被注册好了。
[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%25258810.30.57.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%25258810.30.57.png)
下面我要准备设备绑定的部分,借用之前看别的大牛写博时候的一句话,如果做iphone开发,却不能在真机上调试,真是扫兴得很啊!要想让编写的调试程序能在真机上调试,需要在开发者网站上授权你的设备,也就是Devices部分,一个公司级别的开发者帐户,可以授权100设备。
[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%25258811.04.11.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%25258811.04.11.png)
这里比较简单,只需要填写你设备的UDID并给它起名就可以了,找到UDID的办法是这样,把你的设备连接到电脑,打开itunes,切换到连接设备部分,鼠标点击序列号,会发现UDID就出现了。
[![](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%25258811.09.53.png)](http://tiger-a-s-s.tobybai.cn/%2525E5%2525B1%25258F%2525E5%2525B9%252595%2525E5%2525BF%2525AB%2525E7%252585%2525A7%2525202013-10-17%252520%2525E4%2525B8%25258A%2525E5%25258D%25258811.09.53.png)
但是你会发现当你想圈选复制它时怎么也选不上,因为你一MouseDown,它马上就切换会序列号了,解决办法是按住control键再鼠标点击它(对我就是喜欢Apple这隐隐的贴心又一般人不告诉的牛逼做法)。
当你注册好了App ID,又准备好了设备之后,你终于可以准备mobileprovision文件了!以下部分都很好理解,就不截图了,好吧,其实是我懒了
第一部分,仍然是问你要哪种配备文件,我还是要Development的别废话continue! 第二部分,是让你选择作用的AppID(看看,刚才没白忙活吧),选择好别废话continue! 第三部分,是选择配置适用的证书(看看,刚才没白忙活吧),值得注意的是这是一个复选项,就是说,你的配置文件可以作用于许多不同的证书,团队开发的时候可以在许多台机器上调试了~ 第四部分,是选择要作用到的设备,(看看,刚才没白忙活吧),选择好别废话continue! 第五部分,是给你的配置文件起个名字。

完了。