最近提交App Store碰到提交.ipa时能上传成功,在发布程序中找不到相应的发布版本。App Store返回的问题点是Missing Info.plist key在打包时缺少权限。不同的打包工具添加方式不同,本人用的是Hbuilder打包。在网上找了很久没有发现怎么添加Missing Info.plist key中的key值。在向官网反应后得到的处理方式很有用,希望帮助各位正在爬坑的你。
打包提交appstore如果用到了如下权限需要修改提示语,详细描述使用这个权限的原因,如不修改提示语appstore审核可能会被拒绝
- 通讯录 NSContactsUsageDescription
- 麦克风 NSMicrophoneUsageDescription
- 相机 NSCameraUsageDescription
- 相册(访问) NSPhotoLibraryUsageDescription
- 相册(保存图片到相册) NSPhotoLibraryAddUsageDescription
- 定位(使用时获取地理位置) NSLocationWhenInUseUsageDescription
- 定位(持续获取地理位置) NSLocationAlwaysUsageDescription
新版本IOS 11.3上对定位权限进行了合并 使用定位需要增加一个新的声明
- 定位(iOS11.3及以上版本) NSLocationAlwaysAndWhenInUseUsageDescription
- 蓝牙 NSBluetoothPeripheralUsageDescription
- 语音转文字 NSSpeechRecognitionUsageDescription
- 日历 NSCalendarsUsageDescription
设置方法如下:
使用视图方式打开manifest.json文件, 在plus->distribute->apple节点下添加plistcmds,数据类型为Array,
开发者可复制以下代码到manifest.json文件中并根据实际使用情况进行增减
直接上代码个人建议都加上以防不测的发生,如有疑问请查看本人另外的一个博客有介绍App Store发布中的各种坑。
"plus": {
"distribute": {
"apple": {
"plistcmds": [
"Set :NSContactsUsageDescription 说明读取用户通讯录的原因",
"Set :NSMicrophoneUsageDescription 说明使用麦克风的原因",
"Set :NSPhotoLibraryUsageDescription 说明读取用户相册的原因",
"Set :NSCameraUsageDescription 说明使用用户相机的原因",
"Set :NSPhotoLibraryAddUsageDescription 说明向用户相册添加图片的原因",
"Set :NSLocationAlwaysUsageDescription 说明持续获取用户地理位置的原因",
"Set :NSLocationWhenInUseUsageDescription 说明使用用户地理位置的原因",
"Set :NSLocationAlwaysAndWhenInUseUsageDescription 说明使用用户地理位置的原因"
]
}
}
}