-
Notifications
You must be signed in to change notification settings - Fork 516
VideoSubscriberAccount iOS xcode14.0 beta5
Manuel de la Pena edited this page Aug 18, 2022
·
3 revisions
#VideoSubscriberAccount.framework https://github.com/xamarin/xamarin-macios/pull/15699
diff -ruN /Applications/Xcode_14.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccount.h /Applications/Xcode_14.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccount.h
--- /Applications/Xcode_14.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccount.h 1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccount.h 2022-08-05 16:54:17.000000000 -0400
@@ -0,0 +1,88 @@
+//
+// VSUserAccount.h
+// VideoSubscriberAccountFramework
+//
+// Created by Nik Harris on 1/30/22.
+// Copyright © 2022 Apple Inc. All rights reserved.
+//
+
+#import <VideoSubscriberAccount/VideoSubscriberAccountDefines.h>
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSInteger, VSUserAccountType) {
+ VSUserAccountTypeFree, // Default. The user has access to free content only.
+ VSUserAccountTypePaid // The user has access to content offered to paid subscriptions.
+} NS_REFINED_FOR_SWIFT API_AVAILABLE(ios(16.0), tvos(16.0)) API_UNAVAILABLE(macCatalyst);
+
+typedef NS_ENUM(NSInteger, VSOriginatingDeviceCategory) {
+ VSOriginatingDeviceCategoryMobile,
+ VSOriginatingDeviceCategoryOther
+} NS_REFINED_FOR_SWIFT API_AVAILABLE(ios(16.0), tvos(16.0)) API_UNAVAILABLE(macCatalyst);
+
+VS_EXPORT API_AVAILABLE(ios(16.0), tvos(16.0)) API_UNAVAILABLE(macCatalyst)
+NS_REFINED_FOR_SWIFT
+@interface VSUserAccount : NSObject
+
+// The URL pointing to the application JS that can respond to account update requests, or nil if JS updates are not supported.
+@property (nonatomic, copy, nullable) NSURL *updateURL;
+
+// Indicates whether or not the update URL must have a certificate trusted by the system,
+// and not a certificate trusted by the user of the device.
+@property (nonatomic, assign) BOOL requiresSystemTrust;
+
+// The identifier of the provider known to Apple that provides the account. For use only with TV Provider Authentication integrated apps.
+@property (nonatomic, strong, nullable) NSString *accountProviderIdentifier;
+
+// A value opaque to Apple that can be used to uniquely identify the account.
+// When an account update request is made to the application JS, this identifier will be provided in order to help identify the account to be refreshed.
+@property (nonatomic, copy, nullable) NSString *identifier;
+
+@property (nonatomic, assign) VSUserAccountType accountType;
+
+// Indicates that the user has deleted their account.
+@property (nonatomic, assign, getter=isDeleted) BOOL deleted;
+
+// The date in which the billing cycle ends for paid accounts.
+// used as a heuristic to determine when a refresh should occur.
+// If there is no existing billing cycle, this value should be nil.
+@property (nonatomic, copy, nullable) NSDate *subscriptionBillingCycleEndDate;
+
+
+// Identifies a subset of content from your catalog that subscriber can play.
+// Matches tier identifiers that are present in the availability feed.
+@property (nonatomic, copy, nullable) NSArray<NSString *> *tierIdentifiers;
+
+// Identifies the billing group associated with the subscription.
+@property (nonatomic, copy, nullable) NSString *billingIdentifier;
+
+// The authentication token or data used to maintain the authentication state for the account
+// in your application. This will be provided to the application JS during account refresh requests
+// so that billing cycle dates, account validity, or any other data can be fetched for the account.
+// Additionally, when fetching accounts using VSUserAccountManager, if an account is pulled from a
+// different device, and the user is not signed in to the current device, it can be used to
+// authenticate the user seamlessly without requiring username/password.
+// This data is not accessible by Apple.
+@property (nonatomic, copy, nullable) NSString *authenticationData;
+
+// Indicates whether or not the account was registered on the current device.
+// Accounts pulled using VSUserAccountManager may be from other devices signed
+// in to the same iCloud account.
+@property (nonatomic, readonly, getter=isFromCurrentDevice) BOOL fromCurrentDevice;
+
+// The type of device the VSUserAccount was registered on.
+@property (nonatomic, readonly) VSOriginatingDeviceCategory deviceCategory;
+
+// Use -initWithAccountType:updateURL: or -initWithAccountProviderIdentifier: instead.
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+// Initializes a new VSUserAccount with a URL that points to an application JS
+// that can respond to account update requests.
+- (instancetype)initWithAccountType:(VSUserAccountType)accountType updateURL:(nullable NSURL *)url;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_14.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccountManager.h /Applications/Xcode_14.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccountManager.h
--- /Applications/Xcode_14.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccountManager.h 1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccountManager.h 2022-08-05 16:56:32.000000000 -0400
@@ -0,0 +1,39 @@
+//
+// VSUserAccountManager.h
+// VideoSubscriberAccountFramework
+//
+// Created by Nik Harris on 1/30/22.
+// Copyright © 2022 Apple Inc. All rights reserved.
+//
+
+#import <VideoSubscriberAccount/VideoSubscriberAccountDefines.h>
+
+#import <Foundation/Foundation.h>
+
+
+@class VSUserAccount;
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_OPTIONS(NSInteger, VSUserAccountQueryOptions) {
+ VSUserAccountQueryNone = 0, // default
+ VSUserAccountQueryAllDevices // return VSUserAccounts also registered on other devices in the users iCloud account
+} NS_SWIFT_NAME(VSUserAccountManager.QueryOptions) API_AVAILABLE(ios(16.0), tvos(16.0)) API_UNAVAILABLE(macCatalyst);
+
+VS_EXPORT API_AVAILABLE(ios(16.0), tvos(16.0)) API_UNAVAILABLE(macCatalyst)
+@interface VSUserAccountManager : NSObject
+
+@property (nonatomic, readonly, class) VSUserAccountManager *sharedUserAccountManager;
+
+// Register a new VSUserAccount.
+- (void)updateUserAccount:(VSUserAccount *)account completion:(void (^ _Nullable)(NSError * _Nullable error))completion NS_REFINED_FOR_SWIFT;
+
+// Query the registered VSUserAccounts for your application.
+// By default, this will return VSUserAccounts registered by your application on the current
+// device only. To query the VSUserAccounts registered on all of the devices signed into the
+// users iCloud account, use the query flag VSUserAccountQueryAllDevices.
+- (void)queryUserAccountsWithOptions:(VSUserAccountQueryOptions)options completion:(void (^)(NSArray<VSUserAccount *> * _Nullable accounts, NSError * _Nullable error))completion NS_REFINED_FOR_SWIFT;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_14.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccountQueryOptions.h /Applications/Xcode_14.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccountQueryOptions.h
--- /Applications/Xcode_14.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccountQueryOptions.h 2022-07-21 00:42:54.000000000 -0400
+++ /Applications/Xcode_14.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VSUserAccountQueryOptions.h 1969-12-31 19:00:00.000000000 -0500
@@ -1,13 +0,0 @@
-//
-// VSUserAccountQueryOptions.h
-// VideoSubscriberAccountFramework
-//
-// Created by Nik Harris on 2/28/22.
-// Copyright © 2022 Apple Inc. All rights reserved.
-//
-
-typedef NS_OPTIONS(NSInteger, VSUserAccountQueryOptions) {
- VSUserAccountQueryOptionNone = 0, // default
- VSUserAccountQueryOptionAllDevices // return VSUserAccounts also registered on other devices in the users iCloud account
-};
-
diff -ruN /Applications/Xcode_14.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VideoSubscriberAccount.h /Applications/Xcode_14.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VideoSubscriberAccount.h
--- /Applications/Xcode_14.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VideoSubscriberAccount.h 2022-07-21 00:42:54.000000000 -0400
+++ /Applications/Xcode_14.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VideoSubscriberAccount.h 2022-08-01 12:05:49.000000000 -0400
@@ -15,3 +15,5 @@
#import <VideoSubscriberAccount/VSAccountProviderResponse.h>
#import <VideoSubscriberAccount/VSSubscription.h>
#import <VideoSubscriberAccount/VSSubscriptionRegistrationCenter.h>
+#import <VideoSubscriberAccount/VSUserAccountManager.h>
+#import <VideoSubscriberAccount/VSUserAccount.h>
diff -ruN /Applications/Xcode_14.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VideoSubscriberAccountErrors.h /Applications/Xcode_14.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VideoSubscriberAccountErrors.h
--- /Applications/Xcode_14.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VideoSubscriberAccountErrors.h 2022-07-25 15:37:35.000000000 -0400
+++ /Applications/Xcode_14.0.0-beta5.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/VideoSubscriberAccount.framework/Headers/VideoSubscriberAccountErrors.h 2022-08-05 16:56:32.000000000 -0400
@@ -32,7 +32,7 @@
/// A key that can be used to obtain the identifier string of the user's unsupported subscription provider from an error user info dictionary.
VS_EXTERN NSErrorUserInfoKey const VSErrorInfoKeyUnsupportedProviderIdentifier
-API_AVAILABLE(ios(10.3), tvos(10.3)) API_UNAVAILABLE(macCatalyst);
+API_AVAILABLE(ios(10.2), tvos(10.2)) API_UNAVAILABLE(macCatalyst);
typedef NS_ENUM(NSInteger, VSErrorCode)
{
- README
- xcode13.0 Binding Status
- xcode13.1 Binding Status
- xcode13.2 Binding Status
- xcode13.3 Binding Status
- xcode13.4 Binding Status
- xcode14.0 Binding Status
- xcode14.1 Binding Status
- xcode14.2 Binding Status
- xcode14.3 Binding Status
- xcode15.0 Binding Status
- xcode15.1 Binding Status
- xcode15.3 Binding Status
- xcode15.4 Binding Status
- xcode16.0 Binding Status
- xcode16.1 Binding Status
- xcode16.2 Binding Status