上一篇我介绍了如何申请成为合法的iOS开发者,这篇文章会详细介绍如何使用授权文件(.mobileprovision)和签名证书文件(.cer)

在缴费成功后会收到一份来自Apple Developer Suport的确认邮件,如下图.

在邮件里有一个Login按钮,点击后可以进入Apple Developer会员中心。点击图中的iOS Provisioning Portal,进入开发者授权设置系统。

在设置界面中,可以选择点击页面下方的助手来运行向导。

或者直接从左边的导航来设置,我在这篇文章会主要介绍如何通过导航设置开发者授权以及证书。不过在此之前,我要先简单介绍一下Apple开发者授权的一些基本知识。

Apple对其设备有严格的使用限制,任何应用程序都必须经过iTunes Store下载安装,要么直接从设备里下载,要么从电脑中通过iTunes下载后同步到设备中。所以没有经过破解的设备是没有办法直接安装IPA文件的。但是Apple也提供了一套面向开发者的机制,让他们可以在指定的设备上安装IPA文件来测试和开发,这个机制的核心就是开发者授权。我前面介绍的申请流程就是申请获得一个可以在设备中安装运行IPA文件的开发者授权。

使用开发者授权是一套完整而且相对合理的流程,它可以分为下面几个阶段:

  1. 授权设备,将开发者授权与指定的设备绑定在一起,使得这些设备可以自由安装开发者发布的IPA。
  2. 生成授权文件.mobileprovision,这个文件会被打包进入IPA,实现设备与授权开发帐号的绑定。
  3. 生成证书文件.p12,这个文件也会被打包进入IPA,实现应用发行商的签名以及身份验证。

除此之外,开发者授权系统还提供了开发(Development)和发布(Distribution)两个不同的渠道。开发测试的时候需要设备的绑定而实现在设备上单独安装IPA,发布的时候则不需要绑定设备。所以开发与发布需要使用不同的.mobileprovision与.cer文件。

下面回到刚才的开发者授权系统,我先来介绍一下如何在开发阶段使用授权与证书。

授权设备

点击左侧导航的Device,进入授权设备的页面,点击右上方的Add Device按钮可以添加一个设备。

添加设备的时候可以指定设备的名字(随便写),以及设备的UID(Unique Identifier)。每一个Apple的设备都有一个唯一的识别码,获得这个识别码的方法很简单,将你的设备连接到电脑,然后在iTunes里找到你的设备信息(如下图),点击图中红色方框的位置,设备UID就会显示出来。可以直接通过Ctrl + C (苹果是Command + C)可以把UID拷贝到剪切板。

添加App ID

点击左侧导航的App IDs按钮可以进入应用程序ID的配置页面,可以点击页面右方的New App ID按钮添加一个新的应用。这个ID对应的是即将开发和测试的应用程序。如下图,在description里添加一个单一应用的名称(不支持特殊字符),然后在最下面的Bundle Seed ID里面填入一个含有domain格式的字符串(如com.jamesli.appname)。Bundle Seed ID是一个集合了开发商与应用程序的信息,格式为(com.[开发商].[应用]),这里可以指定为单一应用,也可以指定为全部应用。如果是单一应用,建议刚才填写的description与Bundle Seed ID的最后一项相同(如angrypigs和com.jamesli.angrypigs),如果是全部应用,可以使用这样的Bundle Seed ID: com.jamesli.

申请开发者证书

申请证书的流程在MAC和WIN上是不同的。我分别介绍:

MAC

在Applications->Utilities里手动打开Keychain Access。从顶部菜单栏里Keychain Access -> Certificate Assistant -> Request a Certificate from Certificate Authority. 在新弹出的窗口中填写你的信息后选择Save to disk,就会在桌面保存一个CertificateSigningRequest文件。(如下图)

WINDOWS

在Windows下申请Apple证书是一件非常痛苦的事情,下面我就详细介绍以下:

  1. 首先需要在下面的链接下载OpenSSL。

    http://www.slproweb.com/products/win32openssl.html
    如下图,你需要下载Visual C++ 2008 Redistributables 和 Win32 OpenSSL v1.0.0d Light

  1. 下载安装后,在C盘下就有一个OpenSSL-Win32的安装目录。
  1. 以管理员身份打开命令行进入OpenSSL-Win32/bin文件夹,如果你不是管理员,需要先在命令行中键入下面的命令
set RANDFILE=.rnd

键入下面的命令,生成一个private key:

openssl genrsa -out mykey.key 2048

然后键入下面的命令,申请一个CertSigningRequest文件,注意emailAddress后面是你的邮箱,CN后面是你的名字,C后面是国家

openssl req -new -key mykey.key -out CertificateSigningRequest.certSigningRequest -subj "/emailAddress=yourAddress@example.com, CN=Common Name, C=CN"

这样在OpenSSL-Win32/bin下面就生成了一个CertificateSigningRequest.certSigningRequest文件,注意任何错误提示都不要忽略,否则即使生成了文件也可能无法使用。

这个过程请不要使用Chrome浏览器

返回开发者授权系统的Certificate页面里,点击页面右方的Request Certificate申请一个证书,然后点击页面下方的按钮上传生成的certSigningRequest文件,这样就完成了证书的申请流程。申请成功后,Certificate页面里就有了一条证书,刷新几次页面后证书的状态就变成Issued,点击download按钮可以下载一个cer文件。

接下来是通过cer文件生成p12文件的过程。因为Flash发布iOS应用需要的证书文件格式是p12。这个流程在MAC和Windows上也是有区别的。

MAC

点击下载的.cer文件,文件会自动在Keychain Access里打开,可以右键点击key导出一个p12文件,如下图:

WINDOWS

Windows下生成p12仍然比较麻烦。首先使用管理员身份打开命令行进入OpenSSL-Win32/bin文件夹,如果不是管理员身份则同样需要先运行下面的命令:

set RANDFILE=.rnd

为了操作方便,将下载的cer文件拷贝到bin文件夹下,然后运行下面的命令行生成一个pem文件

openssl x509 -in developer_identity.cer -inform DER -out developer_identity.pem -outform PEM

然后运行下面的命令生成一个p12文件:

openssl pkcs12 -export -inkey mykey.key -in developer_identity.pem -out iphone_dev.p12

在输入了两次密码之后,便会在bin文件夹下有一个iphone_dev.p12的文件。

使用开发者授权

正如上面我们提到的,如果要发布一个可以在指定的设备上单独安装的IPA,则必须使用开发者授权文件.mobileprovision。这个文件可以从开发者授权系统中申请获得。

点击左侧导航的Provisioning进入授权页面,如图点击右侧的New Profile按钮创建一个新的授权文件。

在创建页面中填入名称,选择创建好的证书,以及指定设备(可以多选),提交后就可以生成一个授权帐号。并且可以下载一个mobileprovision文件到本地。

到现在,我们就具备了Flash发布iOS应用的两个重要文件,.mobileprovision和.p12,返回Flash,在发布设置的Deployment选项卡中填入这两个文件(如下图)。这样就可以在指定的设备中开发iOS项目了!

下周我会继续给大家介绍如何在iTunes Connection中创建以及上传你的应用。

Flash开发iOS应用全攻略(三)——如何使用iOS开发者授权以及如何申请证书相关推荐

  1. nagios全攻略(三)----使用插件监控更多信息

    三. 使用命令和插件监控更多信息<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office&quo ...

  2. Flash开发iOS应用全攻略(四)——如何为iTunes Connect准备应用

    在上周我介绍了如何在Flash里发布iOS应用,以及如何申请成为合法的iOS开发者.如何使用iOS开发者授权和申请证书.今天我会给大家介绍一下如果你打算将应用发布到 Apple应用程序商店,都应该做些 ...

  3. Flash发布iOS应用全攻略(一)——如何在Flash里发布iOS应用

    这个系列的文章会给大家介绍一下如何在Flash Professional CS5里发布一个iOS应用,以及如何最终上传到Apple App Store.主要知识点如下: 使用Flash Profess ...

  4. Flash发布iOS应用全攻略(二)——如何成为一个合法的iOS开发者

    上一篇文章里,我们介绍了如何在Flash里发布iOS应用.但是在发布设置中需要用到几个文件使得发布流程无法继续进行.这篇文章我会具体介绍一下如何成为一个合法的iOS开发者. iOS开发者的申请流程 如 ...

  5. Android开发屏幕适配全攻略

    Android的屏幕适配一直以来都在折磨着我们这些开发者,本篇文章以Google的官方文档为基础,全面而深入的讲解了Android屏幕适配的原因.重要概念.解决方案及最佳实践,我相信如果你能认真的学习 ...

  6. Ubuntu下嵌入式Qt开发环境配置全攻略

    本文以友善之臂的Mini6410嵌入式开发板为目标板,介绍ubuntu 12.04系统下,配置嵌入式Qt开发工具的过程.本文中介绍的工具.大部分步骤和脚本来自开发板附带资料光盘,但其默认配置环境为老旧 ...

  7. PHP企业级开发环境配置全攻略-IDE+SVN++(转)

    zend studio一直被认为是最好的php IDE,然而zend studio对javascript和css的支持一直很弱.刚刚发布的zend studio 8 加入了javascript调试的功 ...

  8. Eclipse+JBoss+MySQL开发环境设置全攻略

    J2EE是很好的.作为开发环境,如果采用经典配置:JBuilder+Weblogic+Oracle,自是得心应手,但价格是惊人的.此配置主要是针对大型或超大型应用,硬件要求也很高,针对国内以中小型应用 ...

  9. 开发巴西市场全攻略,外贸人收藏

    巴西联邦共和国位于南美洲东部,是南美洲资源最丰富,经济活力和经济实力最强的国家.巴西作为拉丁美洲的出口大国,一直是一个比较有潜力的市场,亦是我国外贸公司和独立外贸人集群的地方. 2021年巴西贸易概况 ...

最新文章

  1. Scrapy研究和探索(七)——如何防止被ban大集合策略
  2. java中foreach怎么访问,Java对象阵列Foreach方法访问
  3. python编码操作技巧总结
  4. 用jQuery插件jVectorMap制作中国省份区域图
  5. (20)FPGA多路选择器设计(第4天)
  6. Java知多少(84)图形界面之布局设计
  7. [模板]01分数规划
  8. oracle数字类型是什么格式,oracle字段类型NUMBER(38,3),括号中两个数字分别表示什么?...
  9. arduino和轮毂电机接线_Arduino六足机器人第一部分—机制与接线
  10. 在云测平台对手机进行兼容性测试
  11. opencv-视频处理--画感兴趣区域(ROI)
  12. 济南技校计算机专业学什么,技校计算机专业学什么-邹城
  13. 穆迪收购Omega Performance,加强在线信贷培训平台
  14. 电脑快捷键你知道多少个?QQ截图快捷键ctrl加什么
  15. seafile-搭建自己的私有云盘
  16. python笔记-02(列表和元组)
  17. 【嵌入式开发】ARM 关闭中断 ( CPRS 中断控制位 | 中断使能寄存器 | 中断屏蔽寄存器 | 关闭中断 | 汇编代码编写 )
  18. Day 2---vue2 从0开始 写一个前端框架
  19. ios10 Android airplay,iOS下AirPlay投屏功能实现
  20. 武松去厅前声了喏 江民杀毒软件

热门文章

  1. Python中numpy读取高维数组中特定的行,列
  2. Python图形用户界面、图形绘制
  3. 常见位操作及运算应用举例:1,C语言中位运算符异或“∧”的作用​​​​​​​2,异或运算的作用3,(与运算)、|(或运算)、^(异或运算)
  4. ubuntu 18.04 melodic roslaunch :七步使用roslaunch控制两个终端机器人
  5. ROS 控制台:rqt_console 因为比较简单。。。
  6. 雷锋网2012应用下载排行榜
  7. Databricks文档01----Azure Databricks初探
  8. img打 webpack_webpack 打包js中的img路径问题
  9. 探探发布春节短片《慢慢来》 两代人隔空对话催婚问题
  10. 苹果今年秋季或发布史上最多新品