上架相关——App Store 上架流程(2016最新)
转载:
文/做一只会思考的pig(简书作者)
原文链接:http://www.jianshu.com/p/996672107eb1
说实话,公司要上架一个自己做的一个小项目。为了完成这个任务,菜鸟的我一遍找资料一遍跟着做,一遍修改错误一遍查找解决方案。网上的资料大部分都是2015年以前的资料,资料有点不够过时,而且步骤配图也不是很详细,导致我花费了整整4天的工作日只为实现appstore上架。哎呀,也是够蛋疼的,appstore上架的每个流程都要确认无误,每一步的错误都会导致最终的失败。这个shit的操作,再也对你无爱了。
推荐一篇比较详细有用文章:
appStore上传苹果应用程序软件发布流程_iOS开发群雄_新浪博客
常见问题解决方案:
解决Invalid Code Signing Entitlements 问题 - lady-奕奕的个人空间 - 开源中国社区
好了,吐槽和发泄的话就少说,下面就正式进入Appstore上架流程了。
1.首先你的准备一个个人开发者账号、公司开发者账号。---我这里是公司开发者账号,是什么账号不要紧,因为只要有开发者(appstore发布应用)权限就可以了。
2.准备好Xcode以及要上架的项目。(Xcode最好是Xcode7.1以上的版本)--楼楼的Xcode版本就是7.1的。
3.进入苹果开发者官网:
点击account,如下图:
![](https://img.haomeiwen.com/i1320655/f6c6140ec5bb3bce.png)
进入登录界面,登录
![](https://img.haomeiwen.com/i1320655/eb9d719026f30291.png)
4. 登录之后,点击Certificates, Identifiers & Profiles,为项目创建Bundle ID 、发布证书、以及权限文件(Profiles)
![](https://img.haomeiwen.com/i1320655/e934029098ec2c93.png)
进入Certificates, Identifiers & Profiles之后,点击App IDs-->"+"添加按钮, 为项目添加Bundle ID
![](https://img.haomeiwen.com/i1320655/5db67750ea248c17.png)
进入创建APP IDs 的界面。
App ID Description 的name 可以随意填。
![](https://img.haomeiwen.com/i1320655/0021d35eb52db814.png)
Bundle ID 最好的格式是:(如:com.cpmpany.yayade)。
这里Bundle ID是要和Xcode项目中的Bundle Id 一致的。(最好将项目中的Bundle Id复制过来)
![](https://img.haomeiwen.com/i1320655/2fac8226250bdb79.png)
如果有推送功能,要把“Push Notifications”勾选,反正就是项目用到什么功能或服务就把相应的选项勾选。
![](https://img.haomeiwen.com/i1320655/b3afd835f4fabbf5.png)
之后就是 continue -->register 完成注册bundle ID的工作
5.接下来就要请求证书。
找到mac 自带的“钥匙串访问”软件,钥匙串访问-->证书助理-->从证书颁发机构请求证书
![](https://img.haomeiwen.com/i1320655/4ac380a6a307672d.png)
之后在证书助理界面填写相关内容,并将保存到本地桌面。
![](https://img.haomeiwen.com/i1320655/f974654cfa45cd11.png)
如下图桌面上生成的.certSigningRequest证书
![](https://img.haomeiwen.com/i1320655/3bbd604d3add2eae.png)
6.返回到之前的开发者网站:
Sign in with your Apple ID - Apple Developer
去生成发布证书。
![](https://img.haomeiwen.com/i1320655/9e333030d2c3e128.png)
点击 “+”按钮之后,出现以下内容界面,只需要选择“App Store and Ad Hoc” 即可,然后continue。
![](https://img.haomeiwen.com/i1320655/2bfd2167cfd8ce14.png)
、、、、、、、、、、、、、、、、、、、、、、、
如果你发现Production 下面的 “App Store and Ad Hoc”不可选!!!
原因及解决方案:因为一个用户名下只能同时有一个发布证书,你之前建立了某个证书并且没有使用的话就无法再创建了,先把它撤销或者使用后才可以继续创建新的
、、、、、、、、、、、、、、、、、、、、、、、
两次continue之后,进入以下界面(如下图)
选择 “Choose File...”按钮 ,将我们刚刚生成的.certSigningRequest证书导入。--->continue--> downLoad-->Done
![](https://img.haomeiwen.com/i1320655/ca4fc12ea03e548d.png)
生成发布证书之后,下载(downLoad)-->找到下载的文件双击自动安装。
之后我们可以在“钥匙串访问”软件看到我们刚刚安装好的发布证书。
![](https://img.haomeiwen.com/i1320655/c4eec0784ec43a80.png)
如果看到开发者证书无效。解决方案详见:http://my.oschina.net/sfandy/blog/617139?fromerr=OT2Ptq54
如果解决完“开发者证书无效”的问题就要将第6步操作重新做一遍,生成有效的证书。
7.生成profiles 证书
![](https://img.haomeiwen.com/i1320655/30883ac1e416b2b2.png)
![](https://img.haomeiwen.com/i1320655/6d068c5ad8f03973.png)
点击“+”之后
![](https://img.haomeiwen.com/i1320655/dec6e683ea10f856.png)
App ID : 选择含有对应Bundle Id 的app Id。
![](https://img.haomeiwen.com/i1320655/c81f728f1163b4e3.png)
![](https://img.haomeiwen.com/i1320655/15585d5bb9ffd230.png)
之后就是下载文件:downLoad-->找到下载的文件双击自动安装。
8. 进入ITunes Connect
![](https://img.haomeiwen.com/i1320655/d7ccafb9f2e5381d.png)
![](https://img.haomeiwen.com/i1320655/b6e2cee2521bf9fb.png)
![](https://img.haomeiwen.com/i1320655/ded5646807a49d9c.png)
![](https://img.haomeiwen.com/i1320655/cbf9d733e388684f.png)
创建成功之后会进入:
![](https://img.haomeiwen.com/i1320655/3138c4736efcb3ed.png)
9.用Xcode打开你要上架的项目。
![](https://img.haomeiwen.com/i1320655/0a67138f4273b0d5.png)
将 Release copy 改为 distribution,如下图。
![](https://img.haomeiwen.com/i1320655/5b66541dde7f3b1c.png)
![](https://img.haomeiwen.com/i1320655/90fbc81d81eeb741.png)
选择我们刚刚的distribution
![](https://img.haomeiwen.com/i1320655/99e8f372075673de.png)
配置(1.)TARGETS里面的General的Bundle Identifier,
![](https://img.haomeiwen.com/i1320655/5f3a47a08eeae5aa.png)
(2.)TARGETS里面的Build Settings的Code Signing Identity
这里的Provisioning Profiles 选择我们生成的Profiles证书。
![](https://img.haomeiwen.com/i1320655/f3b050e5ca7145d6.png)
(3.)PROJECT里面的Build Settings的Code Signing Identity
![](https://img.haomeiwen.com/i1320655/1601642f82c8ef5f.png)
10. Archive
![](https://img.haomeiwen.com/i1320655/4284305a9ee2a6f2.png)
archive时会遇到各种失败的情况:
(1.)
![](https://img.haomeiwen.com/i1320655/39f76afcfaaf07f9.png)
解决方案 :将三方框架重新导入一遍:即在终端执行:pod update 命令
![](https://img.haomeiwen.com/i1320655/633c097a3fb3242c.png)
(2.)ERROR ITMS-90096
解决方案:ios app 上传时 ERROR ITMS-90096
(3.)Invalid Code Signing Entitlements
解决方案:方案A.
解决Invalid Code Signing Entitlements 问题 - lady-奕奕的个人空间 - 开源中国社区
方案B.Target或者是Project的Build Settings-->Code Signing Identity-->Provisioning Profiles 没有选择对应正确的Profiles证书
(4.)出现No matching provisioning profile found: Your build settings specify a provisioning profile with the UUID “7738acfb-4d92-4525-adbe-fb66e9957009”, however, no such provisioning profile was found错误提示
解决方案:
试一下这个吧。
Your build settings specify a provisioning profile with the UUID
如果archive成功了,就会出现:
![](https://img.haomeiwen.com/i1320655/5d37d7dcfcd5eae0.png)
![](https://img.haomeiwen.com/i1320655/07f55885e6fba605.png)
如果UpLoad to App Store 出现以下错误:
(1.)
![](https://img.haomeiwen.com/i1320655/fd3a3483363d464a.png)
解决方案:重新upload to App Store.
11.UpLoad to App Store成功之后,回到ITunes Connect
完善app一些具体信息
![](https://img.haomeiwen.com/i1320655/8e7f7c9680d6f0dc.png)
注意:
构建版本会在你UpLoad to App Store成功之后的半个小时内,显示构建的版本。
![](https://img.haomeiwen.com/i1320655/1e9d7c3440e067d1.png)
半个小时之后就会出现如下(记得刷新该页面):
![](https://img.haomeiwen.com/i1320655/e8c74050b159b79b.png)
![](https://img.haomeiwen.com/i1320655/e4979b34e220e41c.png)
在构建版本处,出现上面内容之后,直接提交审核。
![](https://img.haomeiwen.com/i1320655/37b202ab604163fb.png)
如果提交不成功出现一下错误:
![](https://img.haomeiwen.com/i1320655/663bc50c08b1c71a.png)
解决方案:技术支持网站没有填写,把它填上就可以喽。
文/做一只会思考的pig(简书作者)
原文链接:http://www.jianshu.com/p/996672107eb1