iOS App Store上架新APP与更新APP版本

作者: 百里玄卿 | 来源:发表于2016-08-24 18:36 被阅读26843次

    一、新版本上架

    1.创建证书

    账号什么的就不说了哈,没有的话要公司买。

    1.1 钥匙串

    打开钥匙串,然后点击钥匙串访问-->证书助理-->从证书颁发机构请求证书,填好相应参数,你就会得到一个.certSigningRequest的文件,记住它存放的地方,先不要动它,让它安静的躺在那里。补充一句,这个文件是用来创建开发证书和发布证书的。如下:

    请求证书 填写信息 获得的证书

    1.2 登录苹果开发者中心,创建开发证书和发布证书

    点击certificates,identifiers&profiles,我们先创建开发证书,首先在certificates一栏中点击all,然后点击右上角加号,选择iOS App Development一项,点继续。

    选择1.1中生成的文件

    然后点继续,再把这个download下来。

    我们再创建发布证书,点击certificates中的all,选择App Store and Ad Hoc项,然后点继续,一样的在上图的页面选择1.1中生成的文件,然后download下来。

    这两个都下载好了之后,双击他们安装,这个时候你会看到你的钥匙串里面多了两项证书。如下图这样就说明安装好了。这两个证书是用来真机调试和上架的哈。

    钥匙串中的证书

    1.3 添加App IDs

    很简单,选择Identifiers栏中的App IDs项,填好name和bundle ID,点继续然后register就可以了。name一定要取规范,自己要知道是哪一个app的。每一个App ID都对应一个APP,懂?

    1.4 添加Devices

    选择Devices栏下的all,点右上角点加号,填好UDID 和 name,点继续,然后register。这个时候你就可以看到你的手机已经在列表里了。添加了你的手机,你才可以真机调试的。UDID的获取方法是,把手机和电脑相连,然后打开iTunes,点击你的手机,然后在首页有一个序列号,点击它就会变,变成UDID后右键,拷贝就可以了啦,name的话就随便你填了,最好是自己要认识,比如你的手机是iPhone6,那你的name就写xxx_iPhone6(某人的iPhone6)。

    获取UDID

    1.5 创建描述文件

    点击Provisioning Profiles下的all,先创建第一个,选择iOS App Development项,继续,在这一页你会看到一个App ID的下拉列表框,这时选择1.3中创建的App ID,继续,然后有一个选择开发证书的选项,选择1.2中创建的那个开发证书,继续,然后选择设备,建议选择select all,或者选择1.4中添加的设备。然后就命名就ok了。建议名字写成(dev_appName)创建好后download下来。

    然后创建第二个,选择App Store项,然后选择相应的App ID,再选择发布证书(1.2中创建的),再填好名字,同样建议命名为(dis_appName)。

    获取到的描述文件

    两个证书下载好后,先把你的账号添加到Xcode里面(Xcode-->preferences-->add apple ID),然后双击安装这两个证书,这时会安装到Xcode里面。

    安装到Xcode

    至此,上面的步骤做完,我们算是完成一半了,咱们继续往下。

    2.Xcode打包上架准备工作如下

    1选择iOS device,2选择product下的archive 按图中标识,一步步的做

    说明:第二步验证时,时间较长,也会验证出你的app的一些问题,这个时候就去修改,修改完后再打包验证。验证成功的话,可以选择export也可以选择upload to app store,我选择的是export。但是这个时候验证应该会有问题,我们接下来继续下一步,打完包后不要管这个,就让这个界面在这里。

    3.iTunes Connect的准备工作

    登录开发者中心,选择iTunes Connect,选择我的APP,然后点加号新建一个app,填好里面的各种信息,特别是版本号,要和你Xcode里面的版本号一样。

    构建版本是上传成功后才有的,我们填完各种信息后,再回到上一步去验证,如果验证成功,我们就上传,我选择的是export,使用的是application loader上传。选择你export的ipa文件,然后上传就可以了,同样上传过程中可能会出现问题,修改。

    Application Loader 这个时候要等20分钟左右 如果你某个地方写错了,需要进入Xcode修改,重新打包上传,然后又不能改版本号,那就改build ID

    然后到这一步了,构建版本也有了,选择后再检查一遍,然后就可以点提交以供审核了。

    遇到的问题:

    1.没有视频,不知道是不是所有的APP都要视频,我第一次上架没有视频然后给我拒了。

    APPLE回复

    解决方法是:录一个30s内的视频,传到优酷(国内好像就这个好用点吧)或者YouTube(要搭梯子),给一个链接放到备注栏中,然后再次提交。

    2.UIFileSharingEnabled问题,这个是文件共享功能。很多音乐播放器或者阅读软件什么的都会开启这个功能,目的是允许用户向APP内共享文件。当时苹果不知道这个功能是干什么的,所以给我拒了,因为他认为我的APP没有使用到文件共享,建议我把这个功能关了。

    UIFileSharingEnabled问题被拒

    解决方法:我同样是录了一个视频,对这个文件共享功能进行了演示,然后提交后就通过了。

    二、更新APP版本

    在实际项目中,我们肯定会更新我们的APP版本,对一个旧版本进行一个维护与更新。那我们该怎么更新苹果iTunes Connect中的APP版本呢。

    1.Xcode准备更新

    1.1 先把准备更新的版本改好,如下:

    更新前的版本号 更新后的版本号

    1.2 把scheme改成release

    点击target,选择Edit Scheme 改成release

    1.3 然后检查一下证书有没有问题,如果过期了就去登录苹果开发者中心下载,如果苹果开发者中心里面的证书也过期了,就按照我们上面讲的重新创建证书。

    博主在更新APP版本的时候,遇到了一个问题,我们公司2014年将我们自己的APP卖给了某国外客户(源码没有出售,只帮助其上架),现在该客户想要更新我们的APP,但是我发现,这个APP里面的证书无效了,苹果开发者中心有证书,未过期,但是注意,这个证书是不能用的,为什么不能用,因为14年的证书肯定早就过期了,这是重新生成的证书,而这个证书又不是在我的电脑上生成的,所以是不能用的。这种情况的话,我们需要向经理或客户索要p12证书,将p12证书安装在电脑里就可以了,而我的客户又不同,国外客户,并且他估计也不知道p12证书是什么或者在哪里,毕竟他们公司的APP都是买的别人的,于是乎我干脆删掉重建证书。

    然后其他的也没什么改的,咱们就打包就行了。参照上述第2点。

    2.iTunes Connect准备工作

    首先添加一个版本,填写好Xcode里面的版本号

    添加一个版本 填写Xcode里的版本号

    然后点创建,里面的信息基本没有什么要填的,然后填完信息点提交就OK了。

    在iOS APP上架与更新中,有很多的坑,大家且行且珍惜。

    相关文章

      网友评论

      • 2eb593bad309:你好,请问在审核通过后,等待开发人员发布的阶段,我之前设定了指定日期发布,还需要点发布此版本吗?
        百里玄卿:@淡入我心_0d87 应该不需要的,但是我没有试过这种方式
      • iOS_Programmer:博主你好,问个问题,我现在做了一个APP,是2.0版本的,以前的1.0版本是两年前外包做的,我现在要升级成2.0,以前的证书和描述文件不能用了,是要重新生成证书和描述文件吗?
        百里玄卿:@无他唯手熟尔 需要,证书有效期只有一年,所有证书删掉重建,当然,你要看证书是不是invalid
      • ce70df11c8e3:如果升级版本时只改了version,但是没改build。会影响App store里面的“更新”按钮的显示吗?我每次跳转升级,明明可以升级,APP store一直显示“打开”。这个是跟build有关吗?
        不是我不明白_2ba1:@百里玄卿 大神 能不能留个联系方式。。问个问题;我的一个APP 发布AD Hoc 出来的IPA是86MB,但是,发布出来App Store 的IPA 确有135MB;看百度一些资料说是解压缩后的大小,上传APP后会进行压缩。。可是我上传到APP 上面后。。发现也就减少了十几MB。。囧。。该怎么解决。。难道就这么坑?
        百里玄卿:@撸撸更健康 额。。。你说的这个问题我没有研究过。你是否确定iTunes Connect里面是可供销售状态,但App Store里面不能更新。如果是这样的话有可能是延迟导致的,或者改一下bulid号再提交一次。
        百里玄卿:@撸撸更健康 额。。。你说的这个问题我没有研究过。你是否确定iTunes Connect里面是可供销售状态,但App Store里面不能更新。如果是这样的话有可能是延迟导致的,或者改一下bulid号再提交一次。
      • 只懂搬砖的z_bl:大神就是叼啊!
      • 呼呼兔:请问博主,项目中app id中的push证书要过期了,从新制作了个push证书,那么Provisioning Profiles文件需要更新和下载吗。
        呼呼兔:我试过了,描述文件不用动的。
        百里玄卿:@呼呼兔 好像不用,不太记得了,你看看描述文件有没有关联推送证书,关联了就要。
      • Ko_Neko:博主你好,我想请教一下.如果是迭代APP版本,在APP中有推送功能,需不需要重新上传APNs推送证书?
      • 姚仙儿:我是接手的之前的项目,现在要更新版本,需要以前的p12吗
        百里玄卿:@姚仙儿 反正是你的证书的p12
      • 1413eccc23d7:你好 。问下 版本更新创建一个版本 但版本号写错了 可以删了重建吗?如果可以删 如何删呢?
        百里玄卿:@Lowkey丶 iTunes Connect里面错了吗?如果是的话,好像有一个remove还是什么的,就是放弃上架。你可以试试,但是我没有遇到过这个情况。另外,打包的版本一定要和itunesconnect里面的一样,不然会上传不成功。
      • Joe_lisa:如果更新版本,bundle id 是不是要和以前的bunle ID相同
        百里玄卿:@Joe_lisa 是的
      • 380ad0f2110c:构建了新的版本,为什么构建版本 那里没有加号的?那
      • 爱新觉罗fate:你好,我请教一下,更新app那块,就像上传新项目一样吗?也要archive 等操作是吧?
        百里玄卿:@爱新觉罗fate 是的
      • b4a44ea208cb:我接手别人的工作,我直接把代码考过来了,版本迭代的证书什么的要怎么弄?
        百里玄卿:@小柒是我 不是原工程吗?看看你的bundle ID 是不是和证书里的一样的,如果不一样就重新创建证书。

      本文标题:iOS App Store上架新APP与更新APP版本

      本文链接:https://www.haomeiwen.com/subject/gxsvsttx.html