【填坑】AppStore提交构建版本(二)
从9月份开始第一次提交AppStore以来,除了第一次略微受阻外后边一直很顺利,休了一段时间再回来,昨儿又提交再次受阻,掉坑里了。
Q&A
1. App版本号
IOS应用有两个版本号,一个对内一个对外,之前傻乎乎的不知道,一直写的一样的,导致后台有一堆版本,其下边却只有一个构建版本。
上次正式提审AppStore才注意这个细节,这次签名时就又忘了规则了,即:
设置CFBundleShortVersionString=1.0.0,CFBundleVersion=1.0.195
时上传后应该为:
2. This bundle is invalid
This bundle is invalid - The key UIRequiredDeviceCapabilities in the Info.plist may not contain values that would prevent this application from running on devices that were supported by previous versions. Refer to QA1623 for additional information:https://developer.apple.com/library/ios/#qa/qa1623/_index.html
上传结束后会出现这个Warning。
对比了本次的plist文件和以前的,发现这个字段下的内容的确有所不同,以前有个选项是<string>opengls-1</string>
,这次变成了<string>metal</string>
。
解决方法就是两个都不写,不限定“能力”,上传后也就不会判断了。
3. Missing Info.plist key
Missing Info.plist key - This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSMicrophoneUsageDescription key with a string value explaining to the user how the app uses this data.
其实这个问题是与上一个问题同时暴露出来的,但是因为上一个问题是在上传完成后就看到了相关信息,所以一开始焦点都在那个问题上。
上一个问题解决后就以为万事大吉了,不料上传显示成功后,发现后台列表里并没有显示,才又翻回去看。
这个问题了,是因为新增了语音功能,需要在plist里声明NSMicrophoneUsageDescription
权限。
总结
这次遇到的都不是什么大问题,但是断断续续也折腾了一整天。
一方面是因为问题都是在版本上传后才暴露出来,一次就是半小时;
另一方面是发现和解决问题的过程有点“坎坷”:一开始以为是版本号冲突导致的问题,昨晚一直陷这里边的,后来仔细看到了第二个问题,第二个问题解决了,才发现真正的原因是第三个问题~哎。
苹果虽然繁琐,不过还是很友好的,有邮件及时通知,只是现在很少注意邮件了。