适用于开发人员的iOS 9 Beta和WatchOS 2

本文概述

  • iOS 9中的多任务
  • iOS 9.1和9.2 Beta, 市场采用
  • WatchOS 2带来了一系列类似于消费者的改进
  • WatchOS 2开发人员专用
  • 新的WatchOS架构
  • 迁移到WatchOS 2
  • 本文总结
Apple最新的移动操作系统已经发布, 如果你是iOS开发人员, 则需要了解以下内容。尽管缺乏彻底的重新设计, iOS 9.x的变化不仅仅涉及皮肤, 但偶然的观察者可能会得出结论, 这并不是一个重大更新。这是一个进化的步骤, 关于iOS 9.x并没有革命性的意义, 但是它确实具有一些新功能。
我们已经介绍了3D Touch, 它将用于更新的6S系列iPhone, 但这只是值得一提的iOS 9.x功能。新更新还带来了许多针对平板电脑的调整, 考虑到苹果决定推出以生产力为重点的超大iPad Pro的决定, 这是可以理解的。 iPad的多任务处理将变得更好, 因为它将包括分割视图, 滑行和画中画模式。
Android和Microsoft开发人员可能会说他们的平台已经具备了这样的功能, 这是正确的:Apple迟到了, iOS在多任务处理方面落后于Android多年。
但是, 除了多任务和生产力应用程序外, iOS 9.x还拥有许多功能, 这些功能在设计时考虑了内容消耗。苹果已经对SceneKit, SpriteKit和Metal进行了调整, 从而使iOS游戏开发人员可以使用一些高级功能, 并使游戏更加精致。搜索正在得到更新, 具有更好的内容索引, 历史记录和Web标记。
哦, 别忘了3D Touch, 这是Apple在Force Touch上的营销演讲。发布iOS 9时, 我已经详细介绍了该主题, 以防万一你错过了它, 你需要将其签出, 因为我发现重复并在新文章中添加绒毛没有意义。
那么我们这次应该重点关注什么呢?
iOS 9中的多任务 我想多任务处理将是一个很好的起点, 只是为了让它摆脱困境, 并让Android开发人员写出一些屈服于我们多年的评论而不必滚动整个帖子。
苹果在iOS9中添加了三种不同的多任务处理模式:
  • 拆分视图
  • 滑过
  • 画中画(PiP)
适用于开发人员的iOS 9 Beta和WatchOS 2

文章图片
了解为什么iOS 9.x中的多任务处理对iPad用户和iOS开发人员是一个福音。
鸣叫
拆分视图是一个熟悉的概念。这两个应用程序以与Windows 8.x和某些基于Android的平板电脑(三星)几乎相同的方式并存。用户可以拖动应用程序并设置其准窗口的大小, 例如, 将Skype条放置在浏览器旁边。
滑行类似于” 拆分视图” , 但它在屏幕右侧由用户调用的覆盖图中显示第二个应用程序, 从而使用户可以快速选择一个应用程序并与其进行交互。这些应用以垂直条显示, 类似于Android 4.x上的应用切换器。
画中画通常用于视频, 允许用户以小框形式查看应用。例如, 如果你正在观看电视节目并收到Skype消息, 则可以在将视频保持在画中画帧的同时进行回复。
这三种模式可以同时使用, 因此, 当iPad在拆分视图中显示两个应用程序时, 你可以使用画中画框。
苹果公司敦促开发人员采用幻灯片浏览和分割视图, 除非他们有特定的理由不这样做。相机应用程序和完整的设备应用程序(例如游戏)被列为例外。至于PiP, 它是针对视频应用程序而设计的, 即使你拥有视频应用程序, 也可以选择退出, 但不必支持PiP。
我还应该注意, Xcode 7中的每个iOS应用模板现在都已预先配置为支持滑行和拆分视图。还有一个警告:大多数iPad不支持拆分视图。实际上, 它仅在iPad Air 2和iPad Pro上可用, 而滑盖即将与iPad Mini 2和Mini 3一起出现在第一代Air中。
可能导致iOS开发人员头痛的另一个问题是布局和缩放。到目前为止, 所有iPad均具有4:3显示屏, 因此设计师习惯于使用4:3宽高比的画布。所有旧版应用程序在拆分视图中看起来都正确吗?这取决于许多因素, 因此在这一点上回答是很冒昧的。但是, 如果你有很多iPad应用程序要牢记, 则要牢记这一点。
苹果已经发布了有关新的多任务处理模式的必要信息, 因此, 你一定应该查看官方的iOS开发人员库以了解详细信息。
iOS 9.1和9.2 Beta, 市场采用 苹果大约在一个月前发布了iOS 9.1, 并且iOS 9.2 beta已经可以通过Apple的Beta软件计划下载。这两个版本都是次要更新。
实际上, 到目前为止, iOS 9.1是第三个iOS 9更新。它引入了对Unicode 7和8的支持, 以及一系列新的表情符号(包括独角兽)。 Xcode已将其升级到7.1版, 并且还更新了一些Apple TV组件。还实现了微小的摄像机调整, 例如实时照片的更新, 该更新可以利用传感器信息来确定何时放下设备以停止录制视频。
iOS 9.2 Beta已发布约一个星期, 这是另一个增量更新。它包括对Safari的一些更改, 在Siri中增加了对阿拉伯语的支持, 还包括对AT&T的NumberSync系统的支持。从开发人员的角度来看, 没有什么太重要的。
在iOS 9推出开始几周后, 苹果表示, 新的移动操作系统显示出迄今为止所有iOS版本中最快的采用率。到9月下旬, 超过50%的iOS设备已更新为iOS9。也就是说, 许多较旧的设备将无法获得更新, 但是在过去四年中购买了iPhone或iPad的所有用户都可以。老式iPhone 4和第一代iPad的用户将无法使用iOS 9。
快速采用仍然是苹果的王牌。 Google发行新版本的Android时, 其硬件合作伙伴通常需要花费数月的时间来发布其设备的更新, 而许多小品牌的设备都不会更新。
WatchOS 2带来了一系列类似于消费者的改进 尽管iOS 9.x可以看作是渐进的, 渐进的更新, 但WatchOS 2几乎不是皮肤上的深度更新。新的操作系统使Apple Watch可以做更多的事情, 为开发人员创造了新的可能性。但是, 凭空想像力并不能改变游戏规则。
大多数更改都是以消费者为中心的, 因此WatchOS 2包含许多应用程序更新。例如, 该手表现在可用于通过Facebook Messenger发送文本和音频文件, iTranslate将允许用户快速翻译语音, 而新的Airstrip应用程序是一种医疗工具。 Siri支持也得到了扩展, 同时新的Time Travel功能使用户可以检查天气和约会。音乐界面已重新设计。用户现在可以回复带有语音命令的电子邮件, 并且当该睡觉时, 可以将手表置于床头柜模式。
Apple Watch现在可以在没有iPhone的情况下连接到WiFi网络;它不需要系绳。 Google几个月前已经在Android Wear中实现了此功能, 因此苹果也将其添加也就不足为奇了。
苹果还通过一系列新表盘(和重新设计的表盘), 其他复杂功能以及定制和组织表盘的新方法来调整美学。新的显示设置可使屏幕寿命更长, 最长70秒。
坦率地说, 我认为这些更新中的大多数并不十分令人兴奋, 其中一些可以说是彻头彻尾的花招。
WatchOS 2开发人员专用 尽管此更新不会为消费者带来很多新颖的功能, 但它将为开发人员带来新的可能性。值得庆幸的是, WatchOS 2允许访问更多传感器和其他硬件组件。
开发人员现在将可以使用Digital Crown进行更多的缩放操作。表冠可用于滚动内容, 通知等。问题在于很少有应用程序能够利用这些新的王冠功能。他们需要一些时间才能更新以支持他们。另一方面, 允许更深入地访问各种组件的全部目的是迫使开发人员为Apple Watch创建本机应用程序。
适用于开发人员的iOS 9 Beta和WatchOS 2

文章图片
WatchOS 2使开发人员可以利用其他Apple Watch传感器和输入方法。
鸣叫
除了新的数字表冠控件外, 第三方应用程序还可以访问麦克风和加速度计。
那么并发症呢?从开发人员的角度来看, 创建, 管理和自定义新并发症的能力可能是最大的更新之一。新的ClockKit框架ClockKit.framework用于管理与Apple Watch应用程序相关的复杂性。该框架允许开发人员使用各种数据源进行” 并发症” , 然后调整视觉外观以确保与应用程序良好匹配。一切使用不同的ClockKit.framework类完成, 你可以查看官方Apple ClockKit框架参考以获取更多详细信息。
这些变化听起来似乎并不重要, 但是从长远来看, 它们可能会改变用户与其Watch OS设备进行交互的方式。他们还可以创建新的用例, 并激励更多的开发人员为该平台创建本机应用程序。
新的WatchOS架构 WatchOS 2的变化并不肤浅。苹果公司对WatchOS架构进行了重新设计, 但好消息是, 所做的更改不会给开发人员带来很多问题。
在WatchOS的第一个版本中, WatchKit扩展在用户的iPhone上运行, 但在WatchOS 2中, 它在Apple Watch上运行。苹果表示, 将扩展程序移到手表上可以使” 手表” 应用程序和扩展程序之间的通信” 更快” , 并允许该应用程序在用户的iPhone不可用时正常工作。还记得我之前提到的无线网络接入吗?好吧, 这是使之成为可能的事情之一。这对于扩展并发症功能也很重要。
适用于开发人员的iOS 9 Beta和WatchOS 2

文章图片
苹果新的WatchOS 2架构对开发人员意味着什么?
鸣叫
WatchKit扩展已移至Apple Watch的事实并不影响其功能。苹果公司指出, WatchOS 2和WatchKit扩展之间的” 分工” 在WatchOS 2中保持不变。
该应用程序仍包含情节提要, 这些情节提要用于定义应用程序用来呈现信息的屏幕, 而WatchKit扩展使用WKInterfaceController子类来管理所述屏幕。所有交互仍由WatchKit框架处理。
苹果公司指出, 在大多数情况下, 现有的WatchKit扩展代码应在WatchOS 2中运行。但是, 将WatchKit扩展迁移到手表的决定将改变应用程序的设计方式。扩展将使用WatchOS SDK框架而不是iOS SDK来实现。但是, 对于WatchOS框架不支持的功能, 开发人员仍将不得不依赖iOS应用程序。这也意味着数据通常存储在Apple Watch上, 但是如果应用程序需要iOS设备上配套应用程序中的某些数据, 它将以无线方式获取数据并将其传输到Apple Watch。开发人员将无法使用共享的组容器与iOS应用交换文件。
迁移到WatchOS 2 还值得注意的是, 开发人员还不需要迁移到WatchOS 2, 尽管Apple指出如果开发人员认为不值得的话许多功能将不可用。上面概述了一些体系结构上的更改可能是必要的, 但是在某些情况下这项工作可能会有所回报。
Apple指出了开发人员在决定将现有应用程序迁移到WatchOS 2是否值得解决之前需要提出的三个基本问题。
  • 开发人员是否需要支持早期的Apple Watch版本?
  • 该应用程序是否严重依赖iCloud技术?
  • 手表应用程序是否依赖于随附的iOS应用程序中的数据?
可以使用相同的iOS应用程序捆绑包为WatchOS 1和WatchOS 2提供两个版本的Apple Watch应用程序。由于体系结构的更改, 必须将WatchOS 2应用程序重新编译为单独的可执行文件。苹果公司指出, 与拥有两个完全独立的应用程序相比, 共享代码可能需要更多的精力并带来更多的复杂性。
由于WatchOS 2中的WatchKit扩展程序在Apple Watch上运行, 因此它不再具有直接访问iCloud技术的权限。所有与iCloud相关的操作都必须由iOS配套应用执行。然后, 数据会以无线方式发送到WatchKit扩展, 因此开发人员可能必须更改在两个设备之间管理和同步数据的方式。
适用于开发人员的iOS 9 Beta和WatchOS 2

文章图片
迁移到WatchOS 2:这是开发人员需要记住的。
鸣叫
由于采用了新架构, 因此与iOS配套应用的通信也发生了变化。如果应用程序需要iOS应用程序中的数据, 则开发人员必须将必需的文件从iOS设备显式传输到WatchOS设备。数据必须在两个地方都进行本地管理, 开发人员需要记住, Apple Watch上的数据不会自动备份。必须将其发送回iOS设备才能进行备份。
本文总结 我们在几篇文章中介绍了iOS 9, 因此这次我决定专注于新的多任务处理功能和Beta。我发现多任务处理方面很有趣, 这是由于苹果决定推出iPad Pro的决定, 该评论获得了一些好评。
与iPad和iPad mini不同, Pro版本更具野心。它专为内容消费和内容创作而设计, 而老式的9.7英寸和7.9英寸的iPad主要用于内容消费。改进的多任务处理对于具有” 专业” 愿望的产品至关重要。在浏览IMDB或玩偶尔玩的游戏时, 你不需要强大的多任务支持, 但是, 如果你需要编辑一些文档, 同时调整一些草图和Skype, 则必须提供一流的多任务支持。
借助iPad Pro, Apple希望为iOS开辟一个新的市场。操作系统已经足够成熟, 可以用于商业用途, 并且借助基于ARM的新型A9X处理器, Apple拥有了强大的硬件平台。当然, 在这个领域, 苹果并不孤单, 可以说iPad Pro受到了微软Surface Pro平板电脑的” 启发” 。苹果决定将其移动操作系统用于iPad Pro, 而OS X保留用于MacBooks。微软放弃了Windows RT(适用于ARM的Windows), 而放弃了ARM处理器。
但是, 英特尔最新的14纳米Core M和Cherry Trail处理器具有极高的能效, 而且我有机会在一些入门级到中档Windows系统(150至500美元)中试用它们。我只能说:不要低估他们。新的Intel硬件非常出色, Windows 10则是好坏参半(至少在我看来), 但是价格将极具竞争力。
对于WatchOS 2, 与iOS 9.x相比, 它的更新要大一些。但是, 我对Apple如此之早就决定重新设计其背后的基本架构的决定感到惊讶。 Apple Watch投入使用已有相当长的一段时间了, 它被Android Wear手表击败了几个季度。
实际上, 我没想到苹果可穿戴式操作系统的第二版会有架构上的变化。也许我抱有不切实际的期望, 但是当一家市值6000亿美元的科技巨头在其竞争对手推出数月后推出产品时, 我不希望它在几个月后重新回到起步阶段。不受限制的WiFi, Apple Watch上运行的WatchKit扩展?它们可能已经并且应该已经包含在WatchOS 1中。
【适用于开发人员的iOS 9 Beta和WatchOS 2】也许这就是为什么Apple Watch推出时许多第三方应用程序的表现不佳的原因。

    推荐阅读