热门标签 | HotTags
当前位置:  开发笔记 > IOS > 正文

单纯聊一聊iOS10适配

这篇文章主要为大家简单介绍了iOS10适配的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

一.工程改动

1. 工程配置

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

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

选中:project -> target -> generalXcode8之前team选项

 

Xcode8之前provisionfile选项

Xcode8之后变更为signing选项

 

signing选项展开

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

选convert后,会让你选择swift的版本。 如果你选择了3.0版本的swift选项,那等待convert结束后,一般依然有一部分需要你做手动适配。 假如你暂时不想花费时间做swift版本的适配,你可以选择swift2.3版本,convert并不会转换任何内容,你的项目也可以像以往在Xcode7中那样正常运行。此时我们选择swift2.3:

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

稍等片刻:

选择update,结束收工:

二、应用适配

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

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

你需要在info.plist中添加你App需要的一些设备权限。首先找到info,可以直接在这里添加键值对:

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


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

```
// 相机
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的字体发生了变化,这导致一些文字在原有的宽高约束下可能会出现显示不完整或者留白的情况,需要逐一检查。参考

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


推荐阅读
  • 在应用开发中少不了界面元素的布局、适配、自适应。之前苹果已经为我们提供了 AutoLayout 和 SizeClasses,方便我们实现页面的自适应弹性布局。但对于一些复杂的交互界 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了预加载多个本地WebView相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 这篇文章主要讲解了“如何应对Android面试”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何应对 ... [详细]
  • 1、DashAPI文档Dash是一个API文档浏览器,使用户可以使用离线功能即时搜索无数API。程序员使用Dash可访问iOS,MacOS, ... [详细]
  • Xcode离线安装帮助文档1.在线查看帮助文件:Xcode下查看帮助文件,菜单Help-DeveloperDocumentation在右上角搜索框中即可检索,但速度很慢 ... [详细]
  • iOS 苹果开发证书失效的解决方案(Failed to locate or generate matching signing assets)
    从2月14日开始,上传程序的同学可能会遇到提示上传失败的提示.并且打开自己的钥匙串,发现所有的证书全部都显示此证书签发者无效.出现以下情况:Failedtolocateorgene ... [详细]
  • 于2012年3月份开始接触OpenStack项目,刚开始之处主要是与同事合作共同部署公司内部的云平台,使得公司内部服务器能更好的得到资源利用。在部署的过程中遇到各种从未遇到过的问题 ... [详细]
  • 我正在使用NavigatonView和NavigationLink,我的观点是这样的:ScrollView{VStack ... [详细]
  • 三,了解支付开发流程申请商户支付账户和配置相关支付信息,域名信息,RSA签名信息等等,为程序开发准备账户秘钥信息。五,合成请求业务数据和回调业务数据校验根据文档加密签名请求数据, ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了iOS开发--漫谈内存管理相关的知识,希望对你有一定的参考价值。 ... [详细]
  • iOS开发Debug和Release的理解
    2019独角兽企业重金招聘Python工程师标准参考:http:blog.csdn.netmad1989articledetails406580331&# ... [详细]
  • iOS推送手机消息的技术背后的奥秘揭示
    作者:allenzzhao,腾讯IEG运营开发工程师消息推送我们几乎每天都会用到,但你知道iOS中的消息推送是如何实现的吗?本文将从推送权限申请,到本地和远程消息推送, ... [详细]
  • Flutter入门——Flutter功能概览
    IT之家12月5日消息:今天谷歌官方宣布Flutter的1.0版本正式发布!Flutter是Google打造的UI工具包,帮助你通过一套代码同时在iOS和Android上构建媲美原 ... [详细]
  • ios中级面试题(二)
    1.如何追踪app崩溃率,如何解决线上闪退当iOS设备上的App应用闪退时,操作系统会生成一个crash日志,保存在设备上。crash日志上有很多有用的信息,比如每个正在执行线程的 ... [详细]
  • 运行就报对我有效的解决方法是:把真机和模拟器需要的文件手动加入其中,具体请参考网络上提供的其他解决方 ... [详细]
author-avatar
vfh1150403
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有