iOS开发项目化入门教程
上QQ阅读APP看书,第一时间看更新

1.3 配置iOS设备以运行程序

只有加入了iOS开发人员计划,才能在真机上运行程序。真机运行大致需要4个步骤,它们分别为生成并安装证书、注册设备、创建应用程序ID、创建并安装描述文件,接下来,本节将针对这4个步骤进行详细地讲解。

1.3.1 生成并安装证书

证书唯一标识了应用程序的开发人员,它包含共享的公钥和个人私钥。Xcode在编译程序时会查找系统中安装的证书,并根据证书对程序进行签名。要想创建证书,大致要经历3个步骤,具体如下。

1. 生成证书签名请求

证书签名请求(Certificate Signing Request,CSR)包含了开发人员的个人信息,例如,注册Apple ID时的电子邮件及姓名等。要想创建一个证书请求,需要按照一定的顺序来逐步实现,大致经历以下几个步骤,具体内容如下。

(1)打开“应用程序”→“实用工具”,找到钥匙串访问程序,然后在其偏好设置中的证书标签页下,将“在线证书状态协议(OCSP)”与“证书撤销清单(CRL)”全部置为关闭,如图1-15所示。

029-01

图1-15 修改钥匙串访问程序的证书设置

(2)关闭偏好设置窗口,并选中菜单“钥匙串访问”→“证书助理”→“从证书颁发机构请求证书”,如图1-16所示。

029-02

图1-16 在钥匙串访问程序中创建证书请求

(3)在弹出的“证书助理”窗口中,输入您用于注册iOS开发人员计划的电子邮件地址及您的姓名,“CA电子邮件地址”不填,然后选中“存储到磁盘”单选按钮,以及“让我指定密钥对信息”复选框,如图1-17所示。

030-01

图1-17 输入证书请求的相关信息

(4)单击“继续”按钮之后,将证书请求文件保存到计算机中的任意目录,证书助理会询问私钥的大小与加密算法,分别选中“2048位”与“RSA”,如图1-18所示。

030-02

图1-18 指定密钥对信息

(5)单击“继续”按钮后,我们就创建了证书的请求文件,即私钥创建完成。

2. 苹果根据请求信息生成证书

证书请求文件生成后,需要将其上传至苹果的iOS开发人员管理页面中,让苹果根据我们的证书请求创建证书,大致流程如下。

(1)使用你的iOS开发人员账号登录苹果开发者主页,其网址为https://developer.apple.com/membercenter/index.action,单击“Certificates,Identifiers & Profiles”选项,打开后的界面如图1-19所示。

031-01

图1-19 iOS开发人员管理界面

(2)单击“iOS Apps”列表中“Certificates”标签,跳转到“iOS Certificates”页面,默认选中左侧的“Certificates”标签下的“All”,然后单击右侧的“+”按钮,选择“iOS App Development”选项,单击“Continue”后进入到关于创建证书页面,再次单击“Continue”后进入的页面如图1-20所示。

031-02

图1-20 创建证书界面

(3)单击图1-20所示的“Choose File…”按钮,选中刚才我们生成的证书请求文件,单击页面中的“Generate”按钮后会将证书请求文件上传,最终生成证书,如图1-21所示。

032-01

图1-21 证书生成的界面

3. 下载证书并安装到系统中

单击图1-21所示的“Download”按钮,将其下载到计算机上,然后双击该文件,将其导入到钥匙串访问程序中即可,如图1-22所示。

032-02

图1-22 将证书导入到钥匙串

注意:

如果需要在真机上运行程序,则Xcode在编译时会查找系统中的证书;如果找不到证书,则会提示编译失败。

1.3.2 注册设备

要想在真机上运行和测试程序,还需要注册您的设备。您需要将设备的UDID添加至iOS管理页面中,它是长度为40的字符串,唯一标识您的设备。查看设备的UDID的方式有两种,具体如下。

1. 使用Xcode工具查看

打开Xcode,在其对应菜单栏中选择“Window”→“Devices”,然后在左侧的“Devices”列表中选中您的设备,在右侧窗口中的“Identifier”项则是UDID,如图1-23所示。

033-01

图1-23 在Xcode中查看设备的UDID

2. 通过iTunes查看

打开iTunes,在左侧的设备栏中选中连接的设备,然后在右侧窗口中单击“序列号”文本标签,即可看到标识符UDID,如图1-24所示。

033-02

图1-24 在iTunes中查看设备的UDID

任选一种方式,查看连接设备的UDID,选中该字符串,按下034-03C,将该标识符复制到剪切板。在iOS开发人员管理界面中,单击左侧的“Devices”标签,再单击右侧页面的“+”按钮,然后输入设备的名称,该名称是随意的,并将UDID粘贴到右侧的文本框中,如图1-25所示。

034-01

图1-25 添加设备并输入设备UDID

单击图1-25所示页面下方的“Continue”按钮,进入到核实信息的页面,审核无误后单击“Register”按钮,注册成功后,可以看到该设备被列在网页中。

1.3.3 创建应用程序ID

当创建新项目的时候,Xcode会询问应用程序的包ID,即Bundle ID,它用于唯一标识该应用程序,而应用程序ID是一个字符串,用于对包ID进行匹配,iOS只会允许执行那些包ID匹配应用程序ID的应用程序。

应用程序ID包含两个部分,前面的部分是包种子ID,即Bundle Seed ID,后面的部分是包ID查询字符串,中间用点分开,格式如图1-26所示。

034-02

图1-26 应用程序ID

图1-26所示是两个应用程序的ID,它包含两个重要的部分,具体如下。

(1)包种子ID:它是一个由10个字符组成的字符串,由系统自动生成,用于区别不同的iOS开发人员或者团队,具有相同的包种子ID的应用程序可以共享钥匙串数据。

(2)包ID查询字符串;用于对包ID进行匹配,分为两种情况,一种是不使用通配符的精确应用程序ID,另一种是使用通配符的应用程序ID。

需要注意的是,不使用通配符的精确应用程序ID给出了包ID的全名,它只能匹配唯一的一个应用程序;而使用通配符的应用程序ID可以匹配多个应用程序,其中,“*”表示通配符,可以匹配一个或者多个任意字符,它必须位于应用程序的末尾位置。例如“A1B2C3D4E5.com.LearniOS.*”能够匹配任何包ID以“com.LearniOS”开头的应用程序。

创建应用程序ID的方式非常简单,首先在iOS开发人员管理页面中单击左侧的“AppIDs”标签,单击右侧窗口中的“+”按钮,然后分别填写“描述信息”和“包ID查询字符串”,如图1-27所示。

035-01

图1-27 填写“描述信息”和“包ID查询字符串”

确认无误后,单击图1-27所示页面下方的“Continue”按钮,进入到证实App ID的界面,然后,单击“Submit”按钮提交即可。之后,如果需要让程序能够运行在真机上,需要让项目的包ID能够匹配该应用程序ID才可以,注意匹配过程是大小写敏感的。

1.3.4 创建并安装描述文件

描述文件用于验证签名并执行应用程序,其包含了指定的证书、应用程序ID与设备列表,iOS设备只有安装了描述文件,才会运行指定的应用程序。要想创建描述文件,并将其安装到Xcode中,大致需要以下几个流程,具体如下。

1. 创建描述文件

打开iOS开发人员管理页面,单击左侧的“Provisioning Profiles”标签,默认选择“All”选项,单击右侧窗口中的“+”按钮,选择描述文件的类型“Development”标签下的“iOS App Development”选项,单击“Continue”按钮,依次选取指定的“App ID”“certificates”及“devices”,并填写“描述文件”的名称,该名称是任意的,单击“Generate”按钮,就能够在页面中看到创建好的描述文件,如图1-28所示。

036-01

图1-28 创建描述文件

2. 安装描述文件

单击图1-28所示的“Download”按钮,下载描述文件。下载完成后双击该文件,Xcode会安装该文件。这时,我们就可以进行真机调试了。