[翻译]What's new in watchOS 3

原文链接

写在前面

第一次翻译,翻译的不好还望多包涵.跪求各位大大原谅 %>_<% .
有很多词语我也不是很明白,所以写的很生硬.
到后面实在是看不懂了,就直接英文上了.
最后还是求原谅啊………………

watchOS 3.0

Snapshots and the Dock

watchOS 3 介绍给用户提供一个快速方式来观看和启动喜欢应用的 Dock 栏.按住旁边的按钮来展现 Dock ,用户滑动它来观看他们喜欢的应用的快照.当用户停止滑动并让 Dock 停下来,当前展示的应用会唤醒并且它的快照会被当前运行的应用所替代.

系统会自动周期性的替换你的应用的快照并且使用他们占据 Dock 来服务你的应用启动图片.你可以在拿到快照之前更换当前展示界面控制器和控制器内容.想要了解更多,查看 WKSnapshotRefreshBackgroundTask .

后台任务

后台任务给你的应用时间在后台运行并保证用户在他们打开应用时可获得信息. watchOS 3 包含几种后台任务方式:

  1. 后台应用刷新.查看 WKApplicationRefreshBackgroundTask 来在后台更新你的应用状态.你经常使用一个后台应用刷新任务来执行其他任务.例如,你可能使用一个后台应用刷新任务来开启一个 NSURLSession 后台调动或者安排一个后台快照刷新任务.

  2. 后台快照刷新.使用 WKSnapshotRefreshBackgroundTask 来更新你的应用用户界面.你能够进行 push , pop ,或者 present 其他控制界面,然后更新新控制器界面的内容.系统会在这个任务完成后尽可能快的获取当前用户界面的快照.

  3. 后台应用连接.当你从匹配的iPhone接收到后台数据时,系统会在后台启动你的应用,实例化一个 WKWatchConnectivityRefreshBackgroundTask 对象,并传送这个任务对象到你的拓展代理的 handleBackgroundTasks: 方法.

  4. 后台URL会话.当一个后台调动请求认证,或者当一个后台调动完成(失败或者成功),系统会创建一个后台 NSURLSession 事件,实例化一个 WKURLSessionRefreshBackgroundTask 对象,并传送这个任务对象到你的拓展代理 handleBackgroundTasks: 方法.

想要更多了解关于通常时持有后台任务,查看后台刷新任务.

复杂化改进(Complications Enhancements)

复杂化是直接出现在表盘上小的视觉元素.在 watchOS 3 中创建一个或多个问题给你的应用机会来提升视觉信息的地方,无论何时用户查看他们的表盘。

这有几个为什么你应该利用增强的复杂化 APIwatchOS 3 的原因:

  1. 用户能通过简单的一次点击来启动你的应用.

  2. 复杂化在手表上的行为告诉系统来保持把应用和准备启动状态联系起来.那就是系统企图在后台启动你的应用,在内存中保持它,并给它额外的时间来更新.

  3. 复杂化能保证平均每天收到50次推送更新.

  4. 向你的 iOS 应用中添加一个复杂化包,让你的复杂化表现在 Apple Watch 表盘图库 中.

watchOS 3 中,你能使用 WKApplicationRefreshBackgroundTask 来更新你的复杂化.

ClockKit 框架包含几种新的模板给额外大的复杂化家族,例如 clkcomplicationtemplateextralargecolumnstextCLKComplicationTemplateExtraLargeRingImage .此外,CLKTextProvider 包含你能使用来创建本体花文本提供者的方法,例如 localizableTextProviderWithStringsFileTextKey: .

用户通知

watchOS 3 包含了用户通知框架(UserNoticications.framework),能提供发送和持有本地货远程消息.你能使用这个框架里的类当他们推送到用户设备上时来计划发送基于详细状况的本地通知,例如一个约会或时间或者一个时间间隔,并且接受和持有本地或远程消息.想要了解更多,查看 UserNotifications Framework Refernce .

主动建议

watchOS 3 中, NSUserActivity 对象包含 mapItem 属性,能够让你提供能被用在其他地方的本地信息.举个例子,如果你的应用显示宾馆信息,你能使用这个 mapItem 属性,当用户选择旅行计划应用是来让用户查看到的本地宾馆,这些宾馆的位置是自动获取的的.

苹果支付改进

watchOS 3 中,PassKit.framwork 添加了在手表上应用内支付的支持.应用内支付方式允许用户安全的进行支付,并传输信息来支付实物商品或服务.

特别的, PassKit 包含了新的 PKPaymentAuthorizationController 类,呈现一个用户能认证支付请求的界面,实现 PKPaymentAuthorizationControllerDelegate 协议,你能响应用户支付认证控制器对象.

增强锻炼功能应用

watchOS 3 中锻炼应用能运行在后台.使你的锻炼应用运行在后台并存取 HealthKit 数据的话,你必须添加 WKBackgroundModes 键到你的 Info.plist 中并赋予它 workout-processing 值.

你也能启动你的 watchOS 锻炼应用从你的 iOS 应用上,调用新方法 startWatchAppWithWorkoutConfiguration:completion: 来启动或唤醒你匹配手表上的锻炼应用.

****WatchKit 框架改进

除了支持后台任务(在后台任务描述)类,WatchKit框架(WatchKit.framework)还包括以下增强功能:

  1. 新的类 WKCrownSequencer 给你关于当前信息状态的数字表盘(crown),和新的 WKCrownDelegate 协议能帮助你实现一个代理,这个代理能接受用户旋转表盘的消息.

  2. WKExtension 类介绍了 applicationState 方法和 WKApplicationState 常量,那些你能使用它来跟踪观察手表应用程序的运行状态. WKEXtension 类也包含两个方法帮助你调度后台任务: scheduleBackgroundRefreshWithPreferredDate:userInfo:scheduledCompletion:scheduleSnapshotRefreshWithPreferredDate:userInfo:scheduledCompletion:.

WKExtensionDelegate 协议介绍了 applicationWillEnterForegroundapplicationDidEnterBackground 方法,能帮助你监视应用状态改变,handleBackgroundTasks:方法能在应用接受到后台任务时通知代理.

  1. 这个新的 WKGestureRecognizer 类是四个具体子类的父类,你能使用来存取手势识别的状态和展现自定义动作.

  2. 新的 WKInterfaceHMCamera 类让你存取一个界面对象,这个界面对象包含了一个来自 HomeKit IP 相机 的描述数据.

  3. 新的 WKInterfaceInlineMovie 类让你为你的视频展示一个海报图片,用来替换当用户点击图片时的视频回放.

  4. 新的 WKInterfacePaymentButton 类让你提供一个苹果支付按钮在你的界面上.

  5. 新的 WKInterfaceSCNScene 类给你一个界面对象,让你使用完成 SceneKit 内容的显示在你的应用上.

  6. 新的 WKInterfaceSKScene 类定义了一个对象,你能使用它在你的应用上管理一个 SpriteKit 屏幕.

Watch Connectivity 框架改进

这个 WCSession 类介绍 hasContentPending 属性,指示什么时候回话在后台有数据接收时,数据仍然能被传送到代理. WCSession 也定义了 _ remainingComplicationUserInfoTransfers_ 属性,指示你能从 iOS 应用发送复杂数据到你的 WatchKit 拓展的时间.

安全和隐私的改进

watchOS3 介绍了一种改变和额外的能帮助你提升你的代码安全的并维持你的数据的方法.想要了解更多点击查看.

  1. SecKey API 包含了改善不对称加密方式.使用SecKey API 而不是过时公共数据安全架构(CDSA)的API.

  2. 该RC4对称加密套件现在默认为所有的SSL/ TLS连接禁用和安全传输API中不再支持SSLv3的。我们建议你停止尽快使用SHA-1和3DES加密算法。

  3. 你必须通过在您的Info.plist文件中的相应目的字符串键静态声明你的应用程序的用途受保护数据类。例如,您必须包括NSCalendarsUsageDescription键进入用户的日历数据。如果不包括相关的目的字符串键,您的应用程序时,它试图访问数据的退出.

现有的框架现在可以使用在watchOS中

watchOS 3包含了几种在其他平台上已经存在的框架.
SceneKit.framework 让你的3D模型集成到你应用程序的UI中.SceneKit结合了高性能和高级别的呈现引擎,详细的API和支持操纵和渲染3D资源.

使用WKIngerfaceSCNScene来在你的watchOS应用或游戏中展示3D呈现的内容.在WatchKit接口中,通过分配SCNScene对象来展示内容,这是一个加载自从Xcode中创建并打包在你的Watch应用中的.scn文件.

SceneKit支持大部分在其他平台上你使用到的特效,包括光照,阴影,动画,物理,和粒子系统,但下列情况除外:

  1. 使用SCNAUdioSource或者SCNAUdioPlayer来创建3D控件音乐.相反,使用 playAudioSource:waitForCompletion: 或者WatchKit来体验API.
  2. 自定义Metal或者OpenGL着色器程序请使用SCNProgram或者SCNTechnique.相反,自定义SceneKity由shader modifier提供着色.
  3. 核心图片特效使用SKnode filter属性渲染来实现,相反,customize rendering with shader modifiers (see SCNShadable).
  4. 在基于物理的材料和灯光和HDR拍照效果在iOS的10,10 tvOS和OS X v10.12介绍。

SpriteKit框架是,你可以用它来制作动画纹理的任意图像,和图形渲染和动画的基础设施,也被称为一个精灵。
使用WKInterfaceSKScene类来添加交互式2D动画到你的手表应用或游戏.在WatchKit接口中,通过创建SKScene对象来展示内容,这是从Xcode中创建,并打包到你的手表应用来让它加载的.sks文件.
SpriteKit在watchOS支持你们中的大多数在其他平台上,其中包括采取行动,物理,照明和粒子系统,但下列情况除外使用的功能:

  1. 3D spatial audio implemented using SKAudioNode. Instead, use playSoundFileNamed:waitForCompletion: or WatchKit sound or haptic APIs.
  2. Custom Metal or OpenGL shader programs implemented using SCNProgram or SCNTechnique. Instead, customize SceneKit rendering with shader modifiers (to learn more, see SCNShadable).
  3. Core Image filters for node rendering implemented using the SCNNode filters property. Instead, customize rendering with shader modifiers (see SCNShadable).

AVFoundation框架能帮助你管理和播放声音.
CloudKit为你的应用和iCloud中移动数据提供了接口.
Core Audio框架提供了数据类型能帮助你定义音频流,复杂的缓冲和时间值.
GameKit(GameKit.framework)可以帮助你创造巨大的社交游戏。

额外的框架提升

除了上述的大的变化,watchOS3包括许多其他的改进。
Core Data
CoreData框架包含了下列改善:

  1. NSPersistentStoreCoordinator now maintains a connection pool for SQLite stores. Root NSManagedObjectContext objects (those without parent MOCs) transparently support concurrent fetching and faulting without serializing against each other.
  2. NSManagedObjectContext objects with SQLite stores in WAL journal_mode support a new feature called query generations. These allow a MOC to be pinned to a version of the database at a point in time and perform all future fetching and faulting against that version of the database. Pinned MOCs are moved to the most recent transaction with any save, and query generations do not survive the process's life time.
  3. The new NSPersistentContainer class provides your app with a high-level integration point that maintains references to your NSPersistentStoreCoordinator, NSManagedObjectModel, and other configuration resources.
  4. Core Data now has tighter integration with Xcode and automatically generates and updates your NSManagedObject subclasses.
  5. NSManagedObject includes several additional convenience methods, making it easier to fetch and create subclasses. NSManagedObject subclasses that have a 1:1 relationship with an entity now support entity.
  6. Core Data introduces several API adjustments that provide better integration with Swift, including parameterized NSFetchRequest objects.
    For more information, see Core Data Framework Reference.

Core Motion

CoreMotion框架包含以下改进:

  1. 设备移动,它融合了从加速度计和陀螺仪的方向和运动的动态更新输出。应用程序可以注册以接收率这些并更新最高至100Hz。
  2. 计步器事件,他能使应用当用户暂定或恢复运行时快速实时接收通知.在支持的设备上,应用能使用CMPedometer API来注册在前台或后台运行,同时接收实时计步器事件.

Foundation

Foundation框架包含以下几种改进:

  1. The new NSDateInterval class defines a programmatic interface for calculating the duration of a time interval and determining whether a date falls within it, as well as comparing date intervals and checking to see whether they intersect.
  2. The NSLocale class defines many new properties that you can use to get information about a locale and how it can be displayed.
  3. The new NSMeasurement class helps you convert measurements into different units, and calculate the sum or difference between two measurements. The new NSMeasurementFormatter class helps you create localized representations of measurements when displaying quantities of units to the user.
  4. The new NSUnit class and concrete NSDimension subclasses help you represent specific units of measure.

HealthKit

除了锻炼身体的应用程序的更多支持,HealthKit框架包含以下更改和增强功能:

  1. 新的HKWorkoutConfiguration类可以让你指定一个锻炼的activityType和locationType.
  2. The new HKWheelchairUseObject characteristic object type and the related HKHealthStore method wheelchairUseWithError:.
  3. New metadata keys that indicate weather types, such as HKWeatherConditionClear and HKWeatherConditionCloudy, and workout types, such as HKWorkoutActivityTypeFlexibility and HKWorkoutActivityTypeWheelchairRunPace.

HomeKit

该框架支持摄像头和门铃配件,并推出了许多新的API来帮助你:

  1. 使用IP照相机附件配置文件来查看和进行交互,显示实时数据和快照,并控制相机设置,话筒和扬声器.
  2. 进入新的服务和特性.
  3. For the primary service, link services and valid values to provide more context and configuration about the accessories

PassKit

在watchOS 3中,该框架在手表上支持应用内支付.需要注意的是,框架包含几个能在其他平台上支持的类,例如 PKPayment, PKPaymentMethod, PKPaymentRequest, and PKPaymentToken.

UIKit

UIKit框架包含以下改善:

  1. 新的preferredFontForTextStyle:compatibleWithTraitCollection:preferredFontDescriptorWithTextStyle:compatibleWithTraitCollection: 方法能帮助你在label、text field、和其他文本区域内使用动态类型.
  2. colorWithDisplayP3Red:green:blue:alpha:initWithDisplayP3Red:green:blue:alpha: 方法支持广域色域.
  3. UILocalNotification 被禁用了,使用User Notification框架中的API.
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,718评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,683评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,207评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,755评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,862评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,050评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,136评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,882评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,330评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,651评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,789评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,477评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,135评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,864评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,099评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,598评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,697评论 2 351

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,066评论 4 62
  • Swift版本点击这里欢迎加入QQ群交流: 594119878最新更新日期:18-09-17 About A cu...
    ylgwhyh阅读 25,340评论 7 249
  • 目录 上回 夜色那么美丽,谁愿离去 “难道这就是传说中的共生魄?”客栈里出现这样一个声音,“还有能自愈的紫雨剑。”...
    喃以之语阅读 419评论 20 11
  • 表妹问我去市场,去到那附近,假期那真的是非常多人,这小地方没别的去处,都挤堆了。看到这情况,有点后悔出来呢。逛了一...
    雪23阅读 139评论 0 0
  • 首先,我们考虑一个主机如何获取IP地址? 有两种获取方法,一种是静态配置,就是从网络管理员获取一个给定的IP地址,...
    六尺帐篷阅读 2,004评论 0 3