2015苹果全球开发者大会在6月9日凌晨,美国旧金山举行,fir.im 整理了一部分的资料,帮助了解 iOS9 的新特性与功能,感兴趣的可以看下。

关于iOS9新增功能

在WWDC 2015上苹果介绍了 iOS 9的主要新功能,比如 Siri 更加智能化,iPad的分屏多任务处理,地图应用增加 Transit 导航,新的 News app 等等。不过也有一些内容是苹果无暇在主题演讲中介绍,或者一提而过足以让你忽略的,以下是隐藏在 iOS 9中的一些改变,包括 iCloud Drive、Go Back to App、6位数密码、通知分组以及Mail附件等,详情点击Cocoa China.

iOS9新特性汇总


那么对于开发者来说,苹果又做了哪些支持呢?

全新开发者计划

苹果表示 iOS Developer Program、Mac Developer Program 以及 Safari Developer Program 统一为 Apple Developer Program 。从6月8日起,开发者针对 iOS、OS X 以及 watchOS平台开发和分发应用只需要单个 Apple Developer Program 会员资格,详情点击这里

提高开发者测试设备数量

苹果提升了开发者注册设备的限制。新限制为500个设备,进行了分类,每种设备最多100个,开发者最多可以注册100台 iPhone 、iPad、iPod 、Apple Watch 和 Apple TV。

Swift

新的Swift语言将开放源代码,为APP编程带来更多可能。

  • Swift的源代码将会基于某个OSI组织批准的开源协议进行开源。
  • 苹果将会允许并鼓励社区开发者贡献代码。
  • 未来Swift将会重点支持 OS X、iOS和Linux三个平台。
  • 源代码将会包括Swift编译器以及标准库。

  • 异常处理模型:新的异常处理模型使用了开发者最为熟悉的try、catch、throw关键字,并且还将完美支持苹果的SDK以及NSError。

  • 可用性:通过使用新的SDK,开发者可以操作平台的新功能,但某些老的操作系统可能并不支持这些新特性,所以开发者就需要额外的检查。在处理类似的兼容问题上,Swift非常的得心应手。如果目标操作系统不支持某个API,那在编译时Swift将会报错。同样,开发者也可以使用#available来确保代码块可以运行于正确的操作系统版本上。

  • 协议可扩展:协议(Protocol)用于统一方法和属性的名称,而不实现任何功能。Swift 2.0增加了协议扩展,在标准包中可以使用它。当使用全局函数时,Swift 2.0已经为方法添加了统一的类型,这样开发者就可以使用函数链,以提高代码的可读性。

UI Testing

在这次的WDDC大会中,苹果提出了一个全新的基于Xcode7的UI测试工具。
它是在新版本的Xcode当中引入的一个基于XCTest框架的UI测试工具,从官方演示的DEMO来看,很强大:强交互的脚本录制->XCTest框架->层级元素定位/Accessibility定位->easy断点调试->完整的Report。有兴趣的同志可以去读一下官方文档了解一下该框架:XCTest使用手册

想要了解这个工具的特性,点这里直达( 来自@anikikun)。

App Thinning

按照苹果官方的解释,应用瘦身功能分为三个部分:

  • 首先是分割功能Slicing,它可以对应用/游戏内容进行分割,根据用户设备类型和屏幕分辨率的不同分发定制化下载包,开发者只需要把完整应用包的内容上传到iTunes Connect即可。
  • 该功能还包含了中间代码功能(Bitcode),可以让苹果在未来为你的应用进行再次优化,而避免了发布新版本的麻烦,同时可以大大减少调试工作量。
  • 第三个功能就是on-demand资源,开发者可以把应用初始化用不到的资源分类打包上传到App Store,在用户使用的时候系统会根据资源标签在必要的时候调用资源,当某些资源不再使用的时候会被系统自动清除,这样不仅减少了应用下载和加载时间,还大大缩小了安装包体。

    感兴趣可点击:
    手游开发者"利器":苹果应用瘦身功能介绍(App Thinning)
    On-Demand Resources Guide中文版(按需加载资源--上)
    On-Demand Resources Guide中文版(按需加载资源--下)

除了这些之外,iOS9在WatchOS、游戏方面加大了支持:

WatchOS

  • 原生应用
  • 使用麦克风
  • 播放视频

游戏

  • SpriteKit、SceneKit、Metal性能提高
  • GamePlayKit:能自动避障和智能寻路
  • Model I/O 3D模型更真实
  • ReplayKit 提升录制游戏性能

最后,推荐微博@iOS程序犭袁 新鲜出炉得 iOS9适配系列教程,狠狠Follow起来~

教你轻松看懂 iOS9 新功能的更多相关文章

  1. iOS9 新功能:Support Universal Links

    先看官方文档:https://developer.apple.com/library/ios/documentation/General/Conceptual/AppSearch/UniversalL ...

  2. iOS9 新功能:Support Universal Links,iOS10 openUrl新函数

    先看官方文档:https://developer.apple.com/library/ios/documentation/General/Conceptual/AppSearch/UniversalL ...

  3. 轻松看懂Java字节码

    java字节码 计算机只认识0和1.这意味着任何语言编写的程序最终都需要经过编译器编译成机器码才能被计算机执行.所以,我们所编写的程序在不同的平台上运行前都要经过重新编译才能被执行. 而Java刚诞生 ...

  4. GJM : 数据结构 - 轻松看懂机器学习十大常用算法 [转载]

     转载请联系原文作者 需要获得授权,非法转载 原文作者将享受侵权诉讼 文/不会停的蜗牛(简书作者)原文链接:http://www.jianshu.com/p/55a67c12d3e9 通过本篇文章可以 ...

  5. 轻松看懂机器学习十大常用算法 (Machine Learning Top 10 Commonly Used Algorithms)

    原文出处: 不会停的蜗牛    通过本篇文章可以对ML的常用算法有个常识性的认识,没有代码,没有复杂的理论推导,就是图解一下,知道这些算法是什么,它们是怎么应用的,例子主要是分类问题. 每个算法都看了 ...

  6. 轻松入门CAS系列(1)-轻松看懂企业单点登录的解决方案

    常见的企业应用情况 企业内部的信息化一般都是一个过程中的 ,起初企业为了部分管理的需要,会上线几个信息化系统:后来对这块慢慢重视,信息系统会越来越多.开始,只有一两个系统时,员工还好,靠脑袋还能记得住 ...

  7. 学会这 2 点,轻松看懂 MySQL 慢查询日志

    MySQL中的日志包括:错误日志.二进制日志.通用查询日志.慢查询日志等等.这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志. 1)通用查询日志:记录建立的客户端连接和执行的语句. 2)慢查 ...

  8. 玄学曲线并不玄 教你如何看懂GPU呈现

    红色代表了“执行时间”,它指的是Android渲染引擎执行盒子中这些绘制命令的时间,假如当前界面的视图越多,那么红色便会“跳”得越高.实际使用中,比如我们平时刷淘宝App时遇到出现多张缩略图需要加载时 ...

  9. php语法学习:轻松看懂PHP语言

    基础语法 开头结尾 PHP脚本以 "<?php " 开头以 "?>" 结尾 <!DOCTYPE html> <html>&l ...

随机推荐

  1. POJ 2186-Popular Cows (图论-强联通分量Korasaju算法)

    题目链接:http://poj.org/problem?id=2186 题目大意:有n头牛和m对关系, 每一对关系有两个数(a, b)代表a牛认为b牛是“受欢迎”的,且这种关系具有传递性, 如果a牛认 ...

  2. C# webBrowser(wpf/winform) 互调js

    1.winform [PermissionSet(SecurityAction.Demand, Name = "FullTrust")] [ComVisible(true)] pu ...

  3. HDU 3974 Assign the task(dfs建树+线段树)

    题目大意:公司里有一些员工及对应的上级,给出一些员工的关系,分配给某员工任务后,其和其所有下属都会进行这项任务.输入T表示分配新的任务, 输入C表示查询某员工的任务.本题的难度在于建树,一开始百思不得 ...

  4. nil、Nil、NULL和NSNull的区别和联系

    一.nil 我们给对象赋值时一般会使用object = nil,表示我想把这个对象释放掉: 或者对象由于某种原因,经过多次release,于是对象引用计数器为0了,系统将这块内存释放掉,这个时候这个对 ...

  5. 如何正确接收 GitHub 的消息邮件

    背景 我厂的开发流程通常都是基于 GitHub 的.在 GitHub 上 review 代码,也是我日常工作的重要组成部分.对我来说,在 code review 过程中最讨厌的莫过于,我在 pull ...

  6. apktool更新,JDK升级配置

    最近使用apktool反编译apk中的xml文件总是失败. Exception in thread "main" brut.androlib.AndrolibException: ...

  7. 【java】:生成excel

    //生成报表公用方法 //excelName: 生成的文件名 //list:时间/日期/描述 //listSelectFiled:  标题 //showContent :  文件内容bean //生成 ...

  8. DataTime格式化大全(转载)

    //c datetime 格式化 DateTime dt = DateTime.Now; Label1.Text = dt.ToString();//2005-11-5 13:21:25 Label2 ...

  9. 10个超级有用、必须收藏的PHP代码样例

    在PHP的流行普及中,网上总结出了很多实用的PHP代码片段,这些代码片段在当你遇到类似的问题时,粘贴过去就可以使用,非常的高效,非常的省时省力.将这些程序员前辈总结出的优秀代码放到自己的知识库中,是一 ...

  10. Position和anchorPoint

    Main.storyboard ViewController.m // //  ViewController.m //  7A12.position和anchorPoint // //  Create ...