1.5 iOS程序调试、打包与发布到App Store

1.5.1 苹果开发人员计划

作为开发者,我们首先得有一个Apple ID(开发者账号),然后去https://developer.Apple.com申请开发人员身份。

iOS的开发,仅在模拟器上运行,是免费的,从2014年后,在真机上运行,也免费了,但如果需要发布到App Store上进行销售,需要申请开发人员计划,这个就不是免费的了。

从2015年6月的WWDC大会之后,苹果的开发人员计划进行了合并,只区分个人开发者和企业开发者,其中个人开发者一年需向苹果公司缴纳99美元或人民币688元的费用,企业开发者则需要缴纳299美元。企业开发者可以开发私有App,但不能通过App Store分发,只能通过网站的方式在企业内部分发。个人开发者则只能通过App Store进行发布。

只要获取了开发者资格,就可以面向苹果所有平台(Mac、iOS、Apple Watch、Safari)进行开发和销售。

在App Store上架销售的App,默认是面向全世界销售,也可以自己控制在哪些国家销售。销售所获得的收入,苹果将获得三成,开发者获得七成。

1.5.2 在模拟器中运行程序

Xcode安装好后,就默认安装了iOS模拟器,可以方便地运行自己开发的App。值得一提的是,与一般人对模拟器的印象不同,iOS 模拟器的运行速度非常快,有时候甚至比真机还快,一点都不卡,启动速度也很快,使用起来令人感觉愉快,如图1-4所示。

图1-4 iOS模拟器选择菜单

选择好运行的设备,按下快捷键command+R即可运行。

1.5.3 在真机中运行程序

目前要在真机中运行调试App,必须拥有开发者证书。有些功能的开发用真机方便些,比如定位、照相、方向感知等用到硬件功能的地方。

有了开发者账号后,可以在Xcode之中按下command+,(逗号),打开设置,如图1-5所示。

图1-5 Xcode设置

如图1-5所示,可以在此添加自己的开发者账号。添加成功后,将iPhone连接到计算机,Xcode 将会自动检测设备,并自动为其申请调试证书,之后会从 iPhone 中拷贝调试符号(第一次调试时才会拷贝),需要几分钟的时间,之后就可以在图 1-4 中看到自己的真机设备,此时就可以选择真机运行自己的代码了。

1.5.4 调试命令与技巧

Xcode中可以方便地指定程序断点。程序中断运行后,在界面下面的调试小窗口中可以方便地查看变量值以及输入调试命令,如图1-6所示。

图1-6 Xcode调试

在代码左侧空白处单击鼠标即可插入断点;左下角可以查看在断点处的环境变量值;右下角的(lldb)处可以输入调试命令。lldb是Xcode的调试器程序。常用的lldb命令有p(打印基础类型变量值)、po(打印NSObject或其子类型的值)等。

1.5.5 将程序打包发布至App Store

App在编写完毕后,便可以发布到App Store上。先要登录网址http://itunesconnect.apple.com,登录后如图1-7所示。

图1-7 itunesconnect界面

在“我的App”中新建一个App,将自己App的App ID填入,相关的内容填好,要注意版本号一定要和自己App实际的版本号一致。之后就可以在Xcode中直接上传了,先从菜单“Window”打开“Organizer”,如图1-8所示,Organizer中的右边界面,如图1-9所示。

图1-8 Xcode的Window菜单展开

图1-9 Organizer中的右边界面

如果Organizer内容为空,需要先建立Archive,如图1-10所示,打开Product菜单,同时运行设备要选择iOS Device或者真机,此时Product菜单下Archive项可以单击,将生成Archive,在Organizer中就能看到该项目了。在图1-9中,可以先Validate(验证),然后单击Submit to App Store按钮(即上传至App Store),等待一段时间,就上传成功了,当然前提是在itunesconnect里建立好了这个App的信息。

图1-10 建立Archive

上传完毕后,要继续在itunesconnect中完善App的信息,包括应用的截图甚至视频、定价、联系方式等。

所有一切都准备就绪后,就可以提交审核了,审核平均需要一周的时间,而且很有可能会因为某些设计不符合苹果的规范而被拒,不过,这个过程是透明的,只要遵照了苹果的规范,一般都会通过,即使被拒绝了,也可以申诉,或者重新修改后提交,只要符合规范,都能通过。