您的位置:首页 > 移动开发

IOS真机测试及程序打包和上传到APP

2014-07-29 18:51 567 查看
一、发布测试,是指将你的程序给

* 你的测试人员,因为程序总归是要测试的

* 你的客户,在正式发布之前,客户肯定是要先看(验收)的

在他们的iOS设备(iphone,ipod, ipad)安装,运行。

二,阅读前提:你自己已经完成了真机测试,意味着:

1、你已经加入了苹果的"iOS developer program",标志事件是付了$99。



[align=left]2、在iOS Provisioning Portal生成了开发证书[/align]



[align=left] [/align]

[align=left] 3、在xcode完成了证书的安装。菜单:window->Organizer,然后选择Devices[/align]



[align=left] [/align]
[align=left] [/align]
[align=left]三,发布流程。[/align]



[align=left] 图:发布流程[/align]
[align=left]1、3个角色:Tester,就是上述测试人员或者你的客户;Developer,就是你了;Program Portal,苹果官方网站,登录你的“Member Center”,就能看到了,[/align]



2、3个主要步骤,见图发布步骤,
[align=left] 1)获取Tester设备udid[/align]
[align=left] 2)到Program Portal生成ad hoc发布证书[/align]
[align=left] 3)在xcode中使用该证书打包(Archive)程序[/align]
[align=left]以上3个步骤后续会详细说。[/align]

假设你的Tester(团队里的测试人员、你的客户)有一定iOS设备使用经验,至少大致会用itunes。

要获取你的Tester的iOS设备UDID:

1、将iOS设备插到安装了itunes的pc/mac,itunes会弹出显示设备概要信息界面,如下图,



这里我们可以看到设备的12位序列号,这不是我们想要的。

2、点击序列号,设备概要界面显示设备udid,如下图,



CTRL-C(mac下为Command-C)拷贝下来,然后QQ或者邮件发给你。

注:1)虽然点击udid,界面什么变化也没有,但是确实是可以拷贝

2)千万不要让人家一个个字符抄,你不可惜人家辛苦,也得想想抄40左右得字符很容易出错。

UDID拿到了,得在iOS provisioning portal上将它加Device列表上,以下是具体步骤:

1、登录会员中心(Member Center)



到苹果开发者官方网站(developer.apple.com),选择Member Center,如上图。

2、使用你的Apple ID登录,如下图



(是写得有点罗嗦)\

3、在会员中心,选择iOS Provisioning Portal,如下图,



4、进入Provisioning Portal主界面,如下图,



5、选择“Devices”,然后选择“Add Devices”, 出现下图界面,



一个地方填名称,一个地方填你从Tester那里拿到的udid。

iOS证书分2种,1种是开发证书,用来给你(开发人员)做真机测试的;1种是发布证书,发布证书又分发布到app store的(这里不提及)和发布测试的ad hoc证书。

那ad hoc证书和开发证书区别在哪里?如果你的tester(团队测试人员、客户)都能将测试设备拿到你面前,直接插到你的mac开发机上,你可以直接将程序“灌”进去,那有开发证书就够了,不需要ad hoc证书。

如果tester的iOS设备不能直接让你灌程序,那怎么办?你必须打包(Archive)你的程序,然后发给你的tester,让他通过itunes进行安装,那就需要ad hoc证书了。

具体的区别,我们先看看ad hoc证书生成过程,和开发证书生成非常类似,

1、进入Provisioning Portal主界面,如下图,



如何进入Provisioning Portal主界面,可以参考“iOS程序发布测试2-获取Tester设备UDID”)

2、选择Provisioning,然后选择Distribution,如下图



这是开发证书和发布证书生成时的一个区别,在文章“iOS程序发布测试4-打包(Archive)发布(share)”中会说到使用的区别。

3、选择“New Profile”,出现新建发布证书界面,如下图,



选择“Ad Hoc”,然后选择Tester的设备ID(如何获取和添加Tester设备ID,见“iOS程序发布测试3-获取Tester设备UDID”)。

4、下载证书到本地,



点击“Download”,将证书下到本地。

注:如果status是“pending”,刷新一下就成“Active”了。

5、导入证书。双击,出现Xcode(我这里是4.0)provisioning界面,如下图,



证书生成好,而且导入了,接下来就是打包(Archive)和发布(share)了。

发布测试的最后一步打包(Archive),前面几个步骤:

Xcode4 真机程序发布测试1-准备

Xcode4 真机程序发布测试2-获取UDID

Xcode4 真机程序发布测试3-生成ad
hoc证书

Xcode4帮助文档有比较详细介绍,但是居然是错的,这里说明一下。

1、设置“Build Settings”,下图是官方文档截图,留意那个红框,居然说反了。



"Skip install"一定要选NO,否则在下面的打包步骤后,Organizer看不到你的程序,就为这折腾我好些时间,国外论坛一堆问题,说我按照官方文档做了,怎么Organizer看不到程序。

1.1 选择ad hoc证书.在“Code Signing”栏,选择你在文章(“iOS程序发布测试3-生成ad hoc证书”)生成的发布证书(ad
hoc),如下图,



这里要选择“iPhone Distribution”,而不是“iPhone Development”,否则会在下面打包(Archive)步骤报证书错误。

2、编辑“Scheme”,选择菜单:Product -> Edit Scheme,如下图,



红色框部分要选对,注意要分别选iOS Device和Release。

3、打包(Archive),选择菜单:Product->Archive,在organizer窗口可以看到你的程序,



然后点击“share”按钮,进行发布(share)

4、Share



选第一个“iOS App Store Package”,生成.ipa文件,你的Tester使用itunes即可安装。

如果选择了最后一个,“Archive”,需要对方安装xcode。

//---------------------------------------------------------------------------------------------------------

对于刚加入iOS应用开发行列的开发者来说,终于经过艰苦的Coding后完成了第一个应用后最重要的历史时刻就是将应用程序提交到iTunes App Store。Xcode 4.2开发工具已经把App提交流程化了,但是第一次提交总是充满兴奋和疑问的。本文将大概介绍如何将iOS应用程序提交到App Store的各个流程。希望对想将应用发布到苹果商店的新开发者一些帮助(翻译文章,如有术语错误,请给我留言批评,谢谢)。


发布iOS应用程序到App Store - 前期工作

要发布iOS应用程序到App Store首先需要一个iOS developer帐号,账号是收费的,$99美元/年。即便是免费应用也需要一个开发者账号,注册Developer账户这里就不详细介绍了。

然后自然是将App准备好。确保iOS应用程序已经在模拟器(Simulator)中做了全面的测试确认没有Bug了。这是第一个App,要尽量给下载的用户留下好的映象。如果在决定发布前一定要把好测试关,直到App真正准备好发布了。

App发布的工作一切准备好了之后,就可以发布应用到App Store了,应用发布概括起来需要以下几个流程:

1. 注册App ID,在Xcode中指定Bundle Identifier

2. 创建发布证书(Distribution Certificate)

3. 创建Distribution Provisioning Profile

4. 用Distribution Profile为应用签名

5. 打包App

6. 在iTunes Connect上传App

以上大部分的操作是在Provisioning Portal、XCode、Keychain Access工具和iTunes Connect中完成的。


发布iOS应用程序到App Store - 创建App ID

首先给iOS应用程序申请一个App ID,它是你的应用程序的唯一标识。登录iOS Developer网站,点击右侧的iOS Provisioning Portal链接,选择App ID

选择创建新app ID。在Description中输入应用的描述信息。Bundle Identifier是指应用的代码标识,你可以用公司名.应用名来标识,例如:com.company.demoapp。



然后打开X-Code,选择Target > Summary。在Identifier输入框中输入上面注册的Bundle Identifier




发布iOS应用程序到App Store - 创建Distribution Certificate

iOS应用都有一个安全证书用于验证开发者身份和签名。在Provisioning Portal的Distribution栏目下有详细介绍,但总体可以归纳为以下步骤。

1. 打开Keychain Access,在Preferences中关闭OCSP和CRL。

2. 点击Keychain Access菜单,选择Certificate Assistant > Request Certificate from Authority。



3. 输入Email地址,选择Saved to Disk和Let me specify key pair information。点击Continue继续。

4. 选择key size of 2048 bits和RSA algorithm,点击Continue继续。

5. 然后会在桌面上生成一个.CSR的文件。

6. 然后进入Provisioning Portal,选择Certificates -> Distribution -> Add Certificate,添加刚才创建的.CSR签名文件。

7. 在等待审核的时候下载并安装WWDR intermediate certificate。

8. 刷新页面,然后就可以下载证书了。下载后安装。



9. 最后一步,打开Keychain Access。选中刚才安装的private key,选择菜单中的Export Item将私钥导出。将导出的私钥备份到一个安全的地方,以便以后重装了系统可以还原。




发布iOS应用程序到App Store - 创建Distribution Provisioning Profile

打开Provisioning Portal,选择Provisioning -> Distribution,选择添加一个新的profile。Distribution Method要选择App Store,App ID需要输入在前面申请的App ID。提交后需要等一会儿再刷新这个页面。然后就可以下载和安装profile了。安装后profile会被添加到XCode。


发布iOS应用程序到App Store - 检查签名和生成设置

打开XCode,在Build Settings中选择Code Signing。在Release设置上选择刚才申请的Distribution Profile。



选择生成目标为iOS device,然后点击Archiving开始打包应用。




发布iOS应用程序到App Store - 打包App

在提交之间只需要打包应用程序了,打包后就可以把应用上传到iTunes Connect上了。点击Edit Schemes,将Archive设置为Release。



如果你的应用有使用一些外部库,还需要将Build Settings的Skip Install设置为Yes。方法是点击Project下面的工程名,然后打开Build Settings。在输入框中输入Skip Install。将Development下面的Skip Install设置为Yes。



依照上面的方法把Targets下面的工程中的Skip Install设置为No。



打包设置完成后,到了最后一步就是将打包和上传了。从菜单中选择Product -> Archive。打包完成后就可以在Organizer的Archives下面看到你的应用了。




发布iOS应用程序到App Store - 在iTunes Connect添加App

App上传后就可能到iTunes Connect去设置App的销售国家、App的描述和截图了。这些设置会直接体现在App Store上。需要设置银行帐号,并同意签署很多销售条款。

打开iTunes Connect,点击Add a New App。选中之前选中的bundle identifier。之后的操作就不用介绍了,因为都是一样基本的信息设置。你只需要按提示一步一步完成设置即可。



之后你的App就添加成功了,并且会显示Waiting for Upload的状态。你只需要打到XCode Organizer的Archives,点击Submit去上传应用。在应用上传过程中需要你登录并选择你要上传的应用。

应用上传完成之后就只需要等待审核了,一般来说App Store的审核需要几个星期。

这就是我发布第一个iOS App应用程序的完整操作流程。希望能够帮助你了解iOS应用程序提交的步骤的流程。回头看看整个提交流程步骤相当多,但有了第一次的经验,以后提交就容易得多了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: