Skip to content

WatchKit watchOS xcode13.0 beta1

Manuel de la Pena edited this page Jun 14, 2021 · 4 revisions

#WatchKit.framework https://github.com/xamarin/xamarin-macios/pull/11911

diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKBackgroundTask.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKBackgroundTask.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKBackgroundTask.h	2021-03-16 05:18:46.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKBackgroundTask.h	2021-06-02 07:34:32.000000000 -0400
@@ -25,6 +25,26 @@
 // starting in watchOS 4.3, userInfo can only contain collections and objects of the following types: NSArray, NSData, NSDate, NSDictionary, NSNull, NSNumber, NSSet, NSString, NSURL, or NSUUID
 @property (readonly, nullable) id<NSSecureCoding,NSObject> userInfo;
 
+/// A handler called shortly before the task’s background time expires.
+///
+/// The expiration handler takes no arguments and has no return value. Use the handler to cancel any ongoing work and to do any required cleanup in as short a time as possible.
+/// The handler may be called before the background process uses the full amount of its allocated time.
+///
+/// Example usage:
+/// @code
+/// func handle(backgroundTasks: Set<WKRefreshBackgroundTask>) {
+///     for task in backgroundTasks {
+///         startBackgroundWork()
+///         task.expirationHandler = {
+///             cancelExistingWork()
+///             task.setTaskCompleted()
+///             ...
+///         }
+///     }
+/// }
+///@endcode
+@property (nullable, strong) void (^expirationHandler)(void) WK_AVAILABLE_WATCHOS_ONLY(8.0);
+
 - (void)setTaskCompleted   WK_DEPRECATED_WATCHOS(3_0, 4_0, "Use -setTaskCompletedWithSnapshot: instead, pass NO to duplicate existing behavior");
 
 // When completing a non-snapshot task the developer has the option of requesting an immediate snapshot refresh
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKExtension.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKExtension.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKExtension.h	2021-03-16 05:20:35.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKExtension.h	2021-06-02 07:36:16.000000000 -0400
@@ -21,7 +21,7 @@
 @class UIColor;
 @class CKShareMetadata;
 
-WK_AVAILABLE_WATCHOS_ONLY(2.0)
+WK_AVAILABLE_WATCHOS_ONLY(2.0) NS_SWIFT_UI_ACTOR
 @interface WKExtension : NSObject
 
 + (WKExtension *)sharedExtension;
@@ -68,7 +68,7 @@
 
 @end
 
-WK_AVAILABLE_WATCHOS_ONLY(2.0)
+WK_AVAILABLE_WATCHOS_ONLY(2.0) NS_SWIFT_UI_ACTOR
 @protocol WKExtensionDelegate <NSObject>
 
 @optional
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKInterfaceController.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKInterfaceController.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKInterfaceController.h	2021-03-16 05:18:47.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/WatchKit.framework/Headers/WKInterfaceController.h	2021-06-02 07:36:16.000000000 -0400
@@ -86,7 +86,7 @@
 	WKAudioRecorderPresetHighQualityAudio	// @44.1kHz, LPCM 705.6kbps, AAC 96kbps
 } WK_AVAILABLE_WATCHOS_ONLY(2.0);
 
-WK_CLASS_AVAILABLE_IOS(8_2)
+WK_CLASS_AVAILABLE_IOS(8_2) NS_SWIFT_UI_ACTOR
 @interface WKInterfaceController : NSObject
 
 - (instancetype)init NS_DESIGNATED_INITIALIZER;
@@ -179,7 +179,7 @@
 
 @end
 
-WK_CLASS_AVAILABLE_IOS(8_2)
+WK_CLASS_AVAILABLE_IOS(8_2) NS_SWIFT_UI_ACTOR
 @interface WKUserNotificationInterfaceController : WKInterfaceController
 
 - (instancetype)init NS_DESIGNATED_INITIALIZER;
Clone this wiki locally