前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >iOS10之Expected App Behaviors

iOS10之Expected App Behaviors

作者头像
tandaxia
发布2018-09-27 15:40:18
5000
发布2018-09-27 15:40:18
举报
文章被收录于专栏:谈补锅谈补锅

  昨天上架到appStore的时候碰到个问题,构建好后上传到itunesconnect的的包都用不了,

显示错误为:此构建版本无效。  

或者英文显示为:ITC.apps.preReleaseBuild.errors.invalidBinary

由于和itunesconnect帐号绑定的邮箱暂时进不去,没看到apple发到我们邮箱的通知信息,所以只在度娘搜索:有的说

是网络问题,有说是电脑问题,有说是icon问题,有说使用Application Loader上传.....  

但是试了都没解决问题,然后就出现了这么多个『此构建版本无效』

后面终于登录了邮箱,看打了apple那边的团队发过来的通知邮件,原来是这个原因:

代码语言:javascript
复制
......
This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSBluetoothPeripheralUsageDescription key with a string value explaining to the user how the app uses this data.
Once these issues have been corrected, you can then redeliver the corrected binary.
Regards,
The App Store team

意思是app的配置文件info.plist少了一个app请求使用设备蓝牙的请求配置:NSBluetoothPeripheralUsageDescription

然后加上后,再次打包上传就可以使用了!

查了下资料,apple从iOS10之后,Expected App Behaviors(预期应用行为),对于用户的隐私更加重视,如果需要访问用户手机的相机、多媒体、蓝牙、通讯录、位置、健康、运动...等等,必须询问用户征得用户授权才可以使用。

官方说明链接:

https://developer.apple.com/library/content/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/ExpectedAppBehaviors/ExpectedAppBehaviors.html

在项目工程配置文件info.plist添加时会自动提示的,截图如下:

查看info.plist的source code,展开如下:

代码语言:javascript
复制
<key>NSBluetoothPeripheralUsageDescription</key>
    <string>是否允许此App访问您的蓝牙</string>
    <key>NSCalendarsUsageDescription</key>
    <string>是否允许此App访问您的日历</string>
    <key>NSCameraUsageDescription</key>
    <string>是否允许此App使用您的相机</string>
    <key>NSContactsUsageDescription</key>
    <string>是否允许此App访问您的通讯录</string>
    <key>NSHealthShareUsageDescription</key>
    <string>是否允许此App访问您的健康分享</string>
    <key>NSHealthUpdateUsageDescription</key>
    <string>是否允许此App访问您的健康更新</string>
    <key>NSHomeKitUsageDescription</key>
    <string>是否允许此App访问您的HomeKit</string>
    <key>NSLocationAlwaysUsageDescription</key>
    <string>我们需要通过您的地理位置信息获取您周边的相关数据</string>
    <key>NSLocationWhenInUseUsageDescription</key>
    <string>您的位置信息将用于地图上显示您的位置,并发送给联系人</string>
    <key>NSMicrophoneUsageDescription</key>
    <string>是否允许此App使用您的麦克风</string>
    <key>NSMotionUsageDescription</key>
    <string>App需要您的同意,才能访问运动与健身</string>
    <key>kTCCServiceMediaLibrary</key>
    <string>是否允许此App访问您的音乐</string>
    <key>NSPhotoLibraryUsageDescription</key>
    <string>是否允许此App访问您的媒体资料库</string>
    <key>NSRemindersUsageDescription</key>
    <string>是否允许此App访问您的提醒事项</string>
    <key>NSSiriUsageDescription</key>
    <string>是否允许此App访问您的Siri</string>
    <key>NSSpeechRecognitionUsageDescription</key>
    <string>是否允许此App使用您的语音识别</string>
    <key>NSVideoSubscriberAccountUsageDescription</key>
    <string>是否允许此App访问您的tv供应商账户</string>

原文链接:http://www.cnblogs.com/tandaxia/p/6207236.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016-12-21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
语音识别
腾讯云语音识别(Automatic Speech Recognition,ASR)是将语音转化成文字的PaaS产品,为企业提供精准而极具性价比的识别服务。被微信、王者荣耀、腾讯视频等大量业务使用,适用于录音质检、会议实时转写、语音输入法等多个场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档