zoukankan      html  css  js  c++  java
  • info.plist

    更新了Xcode8 以及 iOS10,App访问用户的相机、相册、麦克风、通讯录的权限都需要重新进行相关的配置,不然在Xcode8中打开编译的话会直接crash。

    需要在info.plist中添加App需要的一些设备权限。

    相机NSCameraUsageDescription
    
    相册NSPhotoLibraryUsageDescription
    
    通讯录NSContactsUsageDescription
    
    始终访问位置NSLocationAlwaysUsageDescription
    
    位置NSLocationUsageDescription
    
    在使用期间访问位置NSLocationWhenInUseUsageDescription
    
    麦克风NSMicrophoneUsageDescription
    
    访问蓝牙NSBluetoothPeripheralUsageDescription
    
    访问日历NSCalendarsUsageDescription
    
    访问媒体资料库NSAppleMusicUsageDescription
    
    访问健康分享NSHealthShareUsageDescription
    
    访问健康更新NSHealthUpdateUsageDescription
    
    访问运动与健身NSMotionUsageDescription
    
    访问提醒事项NSRemindersUsageDescription

    提别提醒: 从2017年1月1日起,强制使用https,所有新提交的 app 默认不允许使用NSAllowsArbitraryLoads来绕过ATS的限制 安全传输不再支持SSLv3, 建议尽快停用SHA1和3DES算法.

    下面贴出来错误:

     Q1:  iOS10相册相机闪退问题:

    iOS10系统下调用系统相册、相机功能,遇到闪退的情况,日志描述如下:

    This app has crashed because it attempted to access privacy-sensitive data without a usage description.The app's Info.plist must contain an NSPhotoLibraryUsageDescription key with a string value explaining to the user how the app uses this data.

    解决方法:在info.plist文件下添加

    相机权限

    <key>NSCameraUsageDescription<key>
    <string>cameraDesciption<string>

    相册权限

    <key>NSPhotoLibraryUsageDescription<key>
    <string>photoLibraryDesciption<string>

    Q2:  iOS 10 因苹果健康导致闪退

    如果在app中调用了苹果健康,iOS10中会出现闪退。控制台报出的原因是:Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'NSHealthUpdateUsageDescription must be set in the app's Info.plist in order to request write authorization.'

          这是因为我们要在info.plist文件中声明苹果健康的使用权限,所以在info.plist中添加以下key就可以:

    请求写入

    <key>NSHealthUpdateUsageDescription<key>
    <string>some string value stating the reason<string>

    请求读取

    <key>NSHealthShareUsageDescription<key>
    <string>some string value stating the reasonPaste_Image.png<string>

    Q3:  Xcode 打印的那些杂乱无章的bug

    更新Xcode8之后,新建立工程,都会打印一堆莫名其妙看不懂的Log.比如如这些

    subsystem: com.apple.UIKit, category: HIDEventFiltered, enable_level:0, persist_level:0, default_ttl:0, info_ttl:0, debug_ttl:0, generate_symptoms:0, enable_oversize:1,

    屏蔽的方法如下:

    Xcode8里边 Edit Scheme->Run-> Arguments, 在Environment Variables里边添加

    OS_ACTIVITY_MODE = Disable 就行,截图如下:(真的没有iPhone4了)

    弄完之后就可以像之前那样 正常打印了.

  • 相关阅读:
    关于跨域名访问,反向代理系列话题集锦
    中国B2C电子商务最新发展状况调查分析(转)
    顶部导航条(Top Navigation Bar)_Yahoo_Pattern(翻译)
    google,百度,yahoo,msn,ASK网址登录和网站地图提交地址
    如何安装PE到硬盘(包括移动硬盘)分区
    ASP.NET SQL 注入免费解决方案
    O2O循环圈
    B2C暴利行业之保健品行业
    在SQLserver2005中如何对运行慢的查询进行分析?
    互联网产品设计之需求管理
  • 原文地址:https://www.cnblogs.com/crazycode2/p/6364353.html
Copyright © 2011-2022 走看看