Xcode 8新功能介绍
概述
Xcode 8正式版在9月13日已经推送给开发者下载,下载之后就出现了很多编译错误,之前的插件也不能用了,但是发现Xcode8把好多不错的插件功能整合到自身了,感觉这点也挺不错。
结合自己遇到的一些问题和网上的一些教程,今天整理下xcode 8的一些新老特性分享出来。
创建工程更加人性化
内置表情包(Sticker Packs)和iMessage应用
类名提示
从Xcode8beta1就支持类名提示了,所以Xcode8正式版也支持类名提示,开发更加快捷了。
Swift3.0 and Swift2.3 随意切换
值得一提的是Xcode8.0并没有做语法捆绑,在以往的版本中都是捆绑最新的语法,不过我在操作swift3.0语法的时候各种坑,好多以前的语法都不支持了(这有点吐槽苹果,java即使过时也是可以用的)。
那么我们怎么进行Swift语法环境的切换呢?
Swift只能向上兼容,不能向下兼容(也就是说如果你用的是swift2.0写的代码在3.0是会报错的),这也是我朋友不建议我直接学swift,更新太快了。
新增日志筛选
以前搞Android开发的时候,Android studio是有日志筛选的,系统和我们自己的日志是可以分离的,现在xcode 8页新增了这一功能,对于我们调试,找bug是很好的。
代码调试支持Runtime
Xcode8新增Runtime调试,界面可以展示运行时的问题,更加方便我们发现问题。
Xcode 8适配
在Xcode8之前,创建一个XIB或SB文件,都是一个600*600的方块XIB文件。在Xcode8之后,创建的XIB文件默认是6s尺寸的大小。但是这样有个问题,如果Xcode8打开过这个XIB文件,并选择Choose Device之后。其他的Xcode8以下版本的编译器,将无法再打开这个文件,会报以下错误:
The document “ViewController.xib” requires Xcode 8.0 or later. This version does not support documents saved in the Xcode 8 format. Open this document with Xcode 8.0 or later.
有两种方法解决这个问题:
你同事也升级Xcode8,比较推荐这种方式,应该迎接改变。
右击XIB或SB文件 -> Open as -> Source Code,删除xml文件中下面一行字段。
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0">
权限适配
在iOS10之后需要在Info.plist中,添加新的字段获取权限,否则在iOS10上运行会导致崩溃。下面是一些常用的字段,如果有缺少的麻烦各位评论区补充一下。
推送通知
苹果的推送在之前iOS8和iOS9的时候就发生过大的更新,推送功能越来越强大。在iOS10之后苹果推出了UserNotifications框架,可以通过这个框架更好的控制推送通知,可以更新、修改锁屏页面的推送消息,可以添加图片等功能。
但是在用Xcode8打包后,并且不对代码进行修改的情况下,会发现打包后苹果发来了一封邮件。这封邮件大概意思是如果需要使用推送通知,需要对代码做修改,否则将不能使用推送通知。
了解更多,请xcode 8详解
Xcode 8新功能介绍的更多相关文章
- CentOS以及Oracle数据库发展历史及各版本新功能介绍, 便于构造环境时有个对应关系
CentOS版本历史 版本 CentOS版本号有两个部分,一个主要版本和一个次要版本,主要和次要版本号分别对应于RHEL的主要版本与更新包,CentOS采取从RHEL的源代码包来构建.例如CentOS ...
- 原创开源项目HierarchyViewer for iOS 2.1 Beta新功能介绍
回顾 HierarchyViewer for iOS是我们发布的一个开源项目,采用GPL v3.0协议. HierarchyViewer for iOS可以帮助iOS应用的开发和测试人员,在没有源代码 ...
- fedora21发布与新功能介绍(附fedora21安装教程与fedora21下载地址)
fedora21发布与新功能介绍(附fedora21安装教程与fedora21下载地址) 最新的Fedora 21终于正式发布了,Fedora Server 是一款强大可定制化的操作系统,包括了最好最 ...
- Unity User Group 北京站:《Unity5.6新功能介绍以及HoloLens开发》
时间一转眼从春天来到了初夏,Unity User Group(以下简称UUG)活动也迎来了第七期.我们面向Unity3D开发从业者以及未来想从事Unity3D开发的学生群体的UUG活动这次仍然在海淀 ...
- Eviews 8.0&9.0界面新功能介绍
Eviews 8.0&9.0界面新功能介绍 本文其中一些是自己的整理,也有一些是经管之家论坛中一位热心.好学坛友的整理,其中只是简单介绍一下这两个新版本的部分特性,分享出来,有兴趣的看客可以一 ...
- Kafka 0.11新功能介绍:空消费组延迟rebalance
Kafka 0.11新功能介绍:空消费组延迟rebalance 在0.11之前的版本中,多个consumer实例加入到一个空消费组将导致多次的rebalance,这是由于每个consumer inst ...
- DevExpress v15.2新功能介绍视频(25集全)
DevExpress v15.2新功能介绍视频(25集全) http://www.devexpresscn.com/Resources/Documentation-508.html DevExpres ...
- 【Linux】Ubuntu18.04镜像下载,新功能介绍
一.Ubuntu18.04镜像下载 官方下载地址:http://releases.ubuntu.com/18.04/ 官方64位iso下载地址:http://releases.ubuntu.com/1 ...
- ORM 创新解放劳动力 -SqlSugar 新功能介绍
介绍 SqlSugar是一款 老牌 .NET 开源ORM框架,由果糖大数据科技团队维护和更新 ,Github star数仅次于EF 和 Dapper 优点: 简单易用.功能齐全.高性能.轻量级.服务齐 ...
随机推荐
- ios开发- 利用运行时(runtime)字典转模型
现在的ios开发中,我们通常会使用MVC模式.当我们拿到数据的时候,我们要把数据转成模型使用. 一般情况我们拿到的数据都是字典.这是我们就需要将字典转成模型对象了. 当对象的属性很少的时候,我们可以直 ...
- 系统引导修复 ---- Windows 和 Ubuntu
Windows: 1.准备windows相应镜像盘,u盘启动该系统 (以下均为windows10安装界面) 2.进入安装界面<语言,时间,键盘格式>,点击"下一步" 3 ...
- [PA 2014]Kuglarz
Description 魔术师的桌子上有n个杯子排成一行,编号为1,2,…,n,其中某些杯子底下藏有一个小球,如果你准确地猜出是哪些杯子,你就可以获得奖品.花费c_ij元,魔术师就会告诉你杯子i,i+ ...
- [JLOI2015]装备购买
题目描述 脸哥最近在玩一款神奇的游戏,这个游戏里有 n 件装备,每件装备有 m 个属性,用向量zi(aj ,.....,am) 表示 (1 <= i <= n; 1 <= j < ...
- [HNOI2012]永无乡
题目描述 永无乡包含 n 座岛,编号从 1 到 n,每座岛都有自己的独一无二的重要度,按照重要度可 以将这 n 座岛排名,名次用 1 到 n 来表示.某些岛之间由巨大的桥连接,通过桥可以从一个岛 到达 ...
- codeforces round #419 A. Karen and Morning
Karen is getting ready for a new school day! It is currently hh:mm, given in a 24-hour format. As yo ...
- 2015 多校联赛 ——HDU5402(模拟)
For each test case, in the first line, you should print the maximum sum. In the next line you should ...
- Codeforces Round #438 B. Race Against Time
Description Have you ever tried to explain to the coordinator, why it is eight hours to the contest ...
- Python中高阶函数讲解
高阶函数讲解 1. 常规高阶函数 递归函数 格式:def func_name(variable): '''__doc__'''#函数的说明文档 if 条件表达式:#限制递归退出值 pass retur ...
- Java内存模型之重排序
参考链接:https://blog.csdn.net/huzhigenlaohu/article/details/51595676