Additional watchOS 3 Frameworks Changes
This article covers additional, minor changes or enhancements to existing frameworks for watchOS 3.
In addition to the major changes to iOS, Apple has made modifications and improvements to several existing frameworks in watchOS 3.
Core Data
The following enhancements have be made to the Core Data framework for watch OS 3:
- Root NSManagedObjectContext objects supports concurrent faulting and fetching without serialization.
- The NSPersistentStoreCoordinator class maintains a pool of SQLite data stores.
- The NSManagedObjectContext objects with SQLite data stores in the WAL Journal Mode support the new query generation feature where Managed Object Contexts (MOC) can be pinned to specific database versions for future fetching and faulting transactions.
- Using the high-level
NSPersistenceContainer
to reference theNSPersistentStoreCoordinator
, NSManagedObjectModel and other Core Data configuration resources. - Several new convenience methods have been added to
NSManagedObject
making it easier to perform fetches and create subclasses.
For more information, please see Apple's Core Data Framework Reference.
Core Motion
The following enhancements have be made to the Core Motion framework for watch OS 3:
- The new Device Motion event uses the accelerometer and gyroscope to provide motion and orientation updates. The app can register for this update (at rates of up to 100Hz).
- The new Pedometer event enables fast, real-time notifications when the user pauses and resumes running. Use the CMPedometer to register for foreground or background pedometer events.
Foundation
The following enhancements have be made to the Foundation framework for watch OS 3:
- Use the new NSDateInterval class to make date and time interval calculations such as durations, for comparing intervals and testing for interval intersections.
- Several new properties have been added to the NSLocal class to acquire local information and the available display formats.
- Use the new NSMeasurement class to convert between different Units of Measure (UOM) or perform calculations on values in different UOMs.
- Use the new NSMeasurementFormatter class to format localized measurements for displaying to the end user.
- Use the new NSUnit and NSDimension classes for representing specific UOMs.
HealthKit
The following enhancements have be made to the HealthKit framework for watch OS 3:
- Use the new HKWorkoutConfiguration class to specify the
ActivityType
andLocationType
of a workout. - The new HKWheelchairUseObject and the
WheelchairUse
method of the HKHealthStore class have been added for working with wheelchair related health data. - New metadata keys have been added for weather types (such as
HKWeatherConditionClear
andHKWeatherConditionCloudy
) and workout types (such asHKWorkoutActivityTypeFlexibility
andHKWorkoutActivityTypeWheelchairRunPace
) have been added.
HomeKit
The following enhancements have be made to the HomeKit framework for watch OS 3:
- Added the ability to view and interact with HomeKit connected IP cameras.
- Added several new services and characteristics.
- Added more context and configuration of the accessories of primary services and link services.
PassKit
The following enhancements have be made to the PassKit framework for watch OS 3:
- Expands the framework to support secure, in-app payments on the Apple Watch of both physical goods and services.
- The following classes are now available: PKPayment, PKPaymentMethod, PKPaymentRequest and PKPaymentToken
UIKit
The following enhancements have be made to the UIKit framework for watch OS 3:
- To support Dynamic Type in labels, text fields and text boxes use the new
PreferredFontForTextStyle
method of theUIFont
class. - The
ColorWithDisplayP3
method was added to support Wide Color.