转自:http://blog.csdn.net/sakulafly/article/details/39500019

转载的一点体会:

搞了2年AppStore 发布App,每次发版时都是心惊胆战的,怕正式上架后程序各种崩溃,服务器连错地址。坑爹的团队成员,常常把leader坑了,我就被坑过两次,搞得紧急撤回,AppStore 没有历史版本供下载,全下架了!被ld批过,死的心都有。说道原因,大家都懂的,Apple 的Relase版本 ipa只有正式上架后才能允许下载,这就导致提交的测试版本都是 Sandbox版,提交后的时Relase版,期间打包可能会有微笑差异,问题往往在最不可能出现的地方出现。

我经历过一次最严重的失误是:服务器地址选择了内网!Apple的审核员也是渣,根本没有做测试(更新版本时),结果导致只要更新了的用户都无法正常使用App;

另一团队的一个产品也出现过这类问题,结果导致1个星期时间AppStore搜索不到。

AppStore,iTunesConnect 集成TestFlight,对开发者来说真是天大的好事,可以在正式审核通过前,邀请用户测试。谢天谢地,开发者可以提前验证问题,避免上架后再下架,商品出现空白期!

    在2014年的苹果全球开发者大会上,苹果宣布他们把TestFlight集成进了iOS 8的开发套件中。这样做的目标是让开发人员多了一种安装Beta测试程序的方法,并使整个过程更加容易。而实际上,TestFlight作为一个Beta测试的平台,在这之前已经出现了,而且可以同时支持iOS和Android,非常方便好用。

      苹果是在二月份收购了TestFlight的母公司Burstly,几个月之后就宣布了以上消息。这次收购最明显的影响是——TestFlight终止了对Android的支持。同时中止了对TestFlight iOS SDK的支持,除非你在之前已经是TestFlight的用户。目前,TestFlight已经和一些新特性集成进了iTunes Connect。

      以往我们进行测试版本的方法是发布Adhoc版本,不过实践下来TestFlight还是比较方便的,功能也不错。目前,TestFlight网站还在,还可以继续使用测试iOS应用;另外,苹果也提供了TestFlight服务。两者是不同的,你用了哪个服务,这点需要区分清楚。

      1. 使用TestFlight网站来测试iOS应用

      这种方式首先要求你在https://www.testflightapp.com上注册一个账号,如下图所示:

      

      注意,这里需要注册成开发者。如果你没有注册成开发者,这样的个人信息也是可以改的,在Account Setting里面:

      

      然后就是创建一个Team

      

      接着要需要输入Team的名字

      

      接着是上传应用,这里强调一下,上传的应用是用Adhoc的证书签名的,因为会分析这张证书来获得可以安装的设备,TestFlight作为第三方也是遵循苹果的策略的,并没有做破解。

      

      上传后会出现权限设置页,这部分各有不同,比如可能没有User信息,而都是设备的UDID,你可以选择哪些设备可以安装这个应用,

      

      所有设置都设置好之后,在需要测试的设备上,用safari登录http://testflightapp.com网站,在登录后会看见发布的应用,这时就可以安装了。

      

      虽说我们是通过safari来登录的,不过登录后形成了一个快捷方式,在主界面上一样生成了一个图标,方便下次进入:

      


      2. 使用苹果提供的TestFlight服务

      在iTunesConnect改版之后,这就是苹果官方提供的一项服务了,不过这项服务仅仅在iOS8.0以后才能享受到。

      用户首先需要在AppStore里面下载TestFlight的应用,这个类似于一个控制台,后面所有能测试的应用都会在这里显示。

      有意思的是,这个应用的图标和原来的非常相似:

      

      最大的一个区别是中间的六片花瓣变成了三片,不知道是不是意味着不再支持Android的Beta测试,^_^。

      iTunesConnect改版后,多出了一个Prerelease项,这里会记录上传但还没有进入review的所有版本,而这些版本就是可以开放测试的版本。

     这里上传的版本必须使用xCode5.1.1以上或者Application Loader2.9.1以上,签名文件是AppStore正式发布的签名文件——这点和第一种方法是不同的。

      比如,我上传了2个版本后的样子:

      

      然后就是邀请一些测试人员,系统会自动给这些人员发送邮件。

      而这些人员在收到邮件激活后,就可以在下载的TestFlight应用里面看见自己能测试的应用了:

      

      然后同样是安装,进入测试流程。


      这两种方法目前都可以用,具体用哪种方法看自己应用的情形来定。第一种方法可以在不仅仅iOS8的版本上装,如果你的应用需要兼容性测试,当然是非常好的(现在不能集成SDK了,不得不说是个巨大的损失);第二种方法官方有更好一点的信息收集,但目前只有iOS8能使用。


Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐