**
ios app版本更新流程
**
由于我是接手别人的项目进行上架,没有相关证书,描述文件或者p12文件,而且项目的发布证书也快要到期了,所以我新建发布证书ios_distribution.cer和描述文件HelloworldDistribution.mobileprovision,准备好这两个文件后就到Xcode设置一些东西,具体流程看app上架流程1或者app上架流程2
如果不知道怎么创建发布证书和描述文件(或者叫配置文件)可以看这里
另外啰嗦一点,一般在我们的证书界面中应该只有一个开发证书,一个发布证书,没必要生成那么多的证书,证书一般在过期之后才会重新添加,而p12文件是为了可以供给其他的mac设备使用,使设备不需要在苹果开发者网站重新申请开发和发布证书。如果忘记密码,重新生成就好了
补充:这是打包上架的另一个方法
项目内配好证书和配置文件后,如下图所示,xcode先设置iOS Device 然后选择 product->archive
接着项目就会build ,完成后出现下图界面,选择项目,提交即可
更新版本过程的问题
问题一:当在Xcode中设置完后command+b编译时出现
Your build settings specify a provisioning profile with the UUID “e19bf334-2a6b-4422-8c36-743b9d325593”, however, no such provisioning profile was found.
Xcode can attempt to fix this issue. This will reset your code signing and provisioning settings to recommended values and resolve issues with signing identities and provisioning profiles.
表示你选择的描述文件有问题
解决办法:
删除原来的描述文件,新建一个描述文件,下载,双击,再重新设置好就行了。另外注意一点,所创建的描述文件与发布文件是相对应的,设置的时候也要对应好。
问题二:在上传过程中遇到这个错误警告
ERROR ITMS-90529: “Invalid package. Applications built with sdk 9.0 or later must be packaged as proper IPA files.”
解决办法:
然后在桌面新建文件夹,命名为Payload,接着把刚刚打开的.app文件复制进去,压缩,改后缀名Payload.zip为Payload.ipa。接着上传就可以了。这里提一下上传,选择交付你的应用,然后点选取,再选取刚刚的Payload.ipa就可以了
问题三 :
ERROR ITMS-90174: “Missing Provisioning Profile - Apps must contain a provisioning profile in a file named embedded.mobileprovision.”
这是表示缺少了embedded.mobileprovision文件,原因是在设置描述文件和代码ID后没有先在debug的基础上先comand+b编译一下再改为release。
解决办法:
先确定设置的描述文件和代码ID无误后,再点Xcode->product->scheme->edit scheme
先设置为如图所示的debug,然后command+b编译一下,成功后改为release,再command+b编译一下,接着点这里
进去看看有没有embedded.mobileprovision文件,没有?那就因为没有选ios device了
问题四、
ERROR ITMS-90161: “Invalid Provisioning Profile. The provisioning profile included in the bundle com.sprotmen.SportPlus [Payload/运动加.app] is invalid. [Missing code-signing certificate]. A Distribution Provisioning profile should be used when submitting apps to the App Store. For more information, visit the iOS Developer Portal.”
解决:配置文件没弄好,不懂怎么配置的看上面问题一的图,不多说。
xcode 8 之后为了方便就自动配置文件了,但是上架的时候就不能自动配置文件,勾去掉,手动配置,如下
支持原创,转载注明出处!