iOS10适配

一.工程改动

1. 工程配置

直接使用Xcode8Beta打开工程后,你会发现你的provisonfile配置出了问题,这是由于在Xcode8中对工程配置有了一些小的改动。

在Xcode8工程配置的general选项卡中,使用更详细signing选项替换了原有的team选项。

选中:project -> target -> general Xcode8之前team选项

iOS10适配_第1张图片

Xcode8之前provisionfile选项

iOS10适配_第2张图片

Xcode8之后变更为signing选项

iOS10适配_第3张图片

signing选项展开

iOS10适配_第4张图片

2. swift版本

假如你Xcode7的工程中使用了swift,那么你使用Xcode8一打开工程就会出现下面的选项,选择convert:

iOS10适配_第5张图片

选convert后,会让你选择swift的版本。

如果你选择了3.0版本的swift选项,那等待convert结束后,一般依然有一部分需要你做手动适配。

假如你暂时不想花费时间做swift版本的适配,你可以选择swift2.3版本,convert并不会转换任何内容,你的项目也可以像以往在Xcode7中那样正常运行。

此时我们选择swift2.3:

iOS10适配_第6张图片

选择swift版本后,选择你的工程target:

iOS10适配_第7张图片

稍等片刻:

iOS10适配_第8张图片

选择update,结束收工:

iOS10适配_第9张图片

二、应用适配

1. 权限配置

随着人们对隐私保护的注重,似乎苹果的每一代产品都有相应的体现——更为严格的设备和数据访问权限控制。

在iOS10中,如果你的App想要访问用户的相机、相册、麦克风、通讯录等等权限,都需要进行相关的配置,不然会直接crash。

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

首先找到info,可以直接在这里添加键值对:

iOS10适配_第10张图片

也可以找到info.plist文件,然后使用SourceCode方式打开:

iOS10适配_第11张图片
iOS10适配_第12张图片

一些常用的权限配置选项:

```

// 相机

NSCameraUsageDescription

App需要您的同意,才能访问相册

// 相册

NSPhotoLibraryUsageDescription

App需要您的同意,才能访问相机

// 麦克风:

NSMicrophoneUsageDescription

App需要您的同意,才能访问麦克风

// 通信录

NSContactsUsageDescription

App需要您的同意,才能访问通信录

```

其它权限配置选项:

```

// 位置

NSLocationUsageDescription

App需要您的同意,才能访问位置

// 在使用期间访问位置

NSLocationWhenInUseUsageDescription

App需要您的同意,才能在使用期间访问位置

// 始终访问位置

NSLocationAlwaysUsageDescription

App需要您的同意,才能始终访问位置

// 日历

NSCalendarsUsageDescription

App需要您的同意,才能访问日历

// 提醒事项

NSRemindersUsageDescription

App需要您的同意,才能访问提醒事项

// 运动与健身

NSMotionUsageDescription

App需要您的同意,才能访问运动与健身

// 健康更新

NSHealthUpdateUsageDescription

App需要您的同意,才能访问健康更新

// 健康分享

NSHealthShareUsageDescription

App需要您的同意,才能访问健康分享

// 蓝牙

NSBluetoothPeripheralUsageDescription

App需要您的同意,才能访问蓝牙

// 媒体资料库

NSAppleMusicUsageDescription

App需要您的同意,才能访问媒体资料库

```

2. 字体改变

iOS10的字体发生了变化,这导致一些文字在原有的宽高约束下可能会出现显示不完整或者留白的情况,需要逐一检查。

你可能感兴趣的:(iOS10适配)