Xcode 8& iOS 10 注意事项

Xcode8 及iOS10适配问题汇总

1,权限问题

  1. 没有权限描述会造成crash;
  1. 必须填写权限描述否则会造成打包上线时 iTunes Connect 找不到构建版本
  2. 这些权限描述最好全加上,不要以为你用到了什么才加什么。我是被这坑死了,项目中就用到了定位和图库的 ,然后就加个相关的几个。结果通不过,最后全加上就好了。
* 麦克风权限:Privacy - Microphone Usage Description 是否允许此App使用你的麦克风?
* 相机权限: Privacy - Camera Usage Description 是否允许此App使用你的相机?
* 相册权限: Privacy - Photo Library Usage Description 是否允许此App访问你的媒体资料库?
* 通讯录权限: Privacy - Contacts Usage Description 是否允许此App访问你的通讯录?
* 蓝牙权限:Privacy - Bluetooth Peripheral Usage Description 是否许允此App使用蓝牙?
* 语音转文字权限:Privacy - Speech Recognition Usage Description 是否允许此App使用语音识别?
* 日历权限:Privacy - Calendars Usage Description 是否允许此App使用日历?
* 定位权限:Privacy - Location When In Use Usage Description 我们需要通过您的地理位置信息获取您周边的相关数据
* 定位权限: Privacy - Location Always Usage Description 我们需要通过您的地理位置信息获取您周边的相关数据

参考

2,字体变大问题

  1. UIButton显示不全,加上sizeToFit 就可以解决 [btn sizeToFit]
  2. UILable 显示不全,iOS10提供一个属性adjustsFontForContentSizeCategory = YES;来设置。

3,控制台输出问题

控制台输出系统调试信息:Edit Scheme --- Arguments --- Environment Variables 添加key - value :OS_ACTIVITY_MODE disable
真机不输出调试信息,用宏printf替代体统的nslog:

#ifndef __OPTIMIZE__
#define NSLog(...) printf("%f %s\n",[[NSDate date]timeIntervalSince1970],[[NSString stringWithFormat:__VA_ARGS__]UTF8String]);
#endif

Xcode8控制台乱码的另一种解决方式,使用改变Xcode系统模板的方式

4,键盘问题

UIKeyboardTypeNumberPad数字键盘在ios10下无效了,新的枚数字类型:UIKeyboardTypeASCIICapableNumberPad

5,Xcode8注释快捷键失效

6, iOS 10.3 Label设置的中划线失效

你可能感兴趣的:(Xcode 8& iOS 10 注意事项)