iOS10之Expected App Behaviors

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

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

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

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

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

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

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

......
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,展开如下:

<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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏开源优测

移动测试入门之功能测试

移动端的功能测试通常由用户交互的测试及测试事务构成。 影响功能测试的因素有: 基本功能及业务流(银行?游戏?保险?等等) 目标用户群体(个人用户?企业用户?等等...

3136
来自专栏EAWorld

企业级API网关的设计

本文目录: 一、网关简介 二、网关的作用和价值 三、企业级API网关需要具备的条件 四、业界常用的API网关方案 五、如何设计一个好的企业级API网关产品 六、...

1.3K9
来自专栏木子昭的博客

在Github创建个人专属名片

1052
来自专栏Linyb极客之路

秒杀架构设计

最近在部门内部分享了原来在电商业务做秒杀活动的整体思路,大家对这次分享反馈还不错,所以我就简单整理了一下,分享给大家参考参考

2111
来自专栏AILearning

【Scikit-Learn 中文文档 】安装 scikit-learn | ApacheCN

中文文档: http://sklearn.apachecn.org/cn/0.19.0/tutorial/basic/tutorial.html 英文文档:...

3808
来自专栏大数据文摘

Google披露:大规模集群管理工具Borg的细节

2223
来自专栏Java架构沉思录

如何设计一个秒杀系统

最近在部门内部分享了原来在电商业务做秒杀活动的整体思路,大家对这次分享反馈还不错,所以我就简单整理了一下,分享给大家参考参考。

1252
来自专栏Java编程技术

MongoDB和MySQL对比(译)

几十年来,关系型数据库已经成为企业应用程序的基础,自从MySQL在1995年发布以来,它已经成为一种受欢迎并且廉价的选择。然而随着近年来数据量和数据的不断激增,...

4801
来自专栏北京马哥教育

10个免费的服务器监控工具

监控你的WEB服务器或者WEB主机运行是否正常与健康是非常重要的。你要确保用户始终可以打开你的网站并且网速不慢。服务器监控工具允许你收集和分析有关你的Web服务...

1.2K6
来自专栏SAP最佳业务实践

SAP最佳业务实践:FI–应付账款(158)-3 F110使用付款程序过帐预付款

4.3 F110使用付款程序过帐预付款 对供应商的预付定金可使用付款程序自动过帐。 必须过帐预付款。 必须不激活支付发布清单和直联支付(EPIC)应用程序才能...

37311

扫码关注云+社区

领取腾讯云代金券