Share via


Xamarin.iOS SDK API diff: 11.9.1 vs 11.9.2

Xamarin.iOS.dll

Namespace Foundation

Type Changed: Foundation.NSUserActivity

Added properties:

public virtual string[] ContextIdentifierPath { get; }
public virtual bool IsClassKitDeepLink { get; }

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string SdkVersion = "11.3";
+public const string SdkVersion = "11.4";
-public const string Version = "11.9.1";
+public const string Version = "11.9.2";

Added field:

public static const string ClassKitLibrary = "/System/Library/Frameworks/ClassKit.framework/ClassKit";

New Namespace ClassKit

New Type: ClassKit.CLSActivity

public class CLSActivity : ClassKit.CLSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSActivity (Foundation.NSCoder coder);
	protected CLSActivity (Foundation.NSObjectFlag t);
	protected CLSActivity (IntPtr handle);
	// properties
	public virtual CLSActivityItem[] AdditionalActivityItems { get; }
	public override IntPtr ClassHandle { get; }
	public virtual double Duration { get; }
	public virtual CLSActivityItem PrimaryActivityItem { get; set; }
	public virtual double Progress { get; set; }
	public virtual bool Started { get; }
	// methods
	public virtual void AddAdditionalActivityItem (CLSActivityItem activityItem);
	public virtual void AddProgressRange (double start, double end);
	protected override void Dispose (bool disposing);
	public virtual void Start ();
	public virtual void Stop ();
}

New Type: ClassKit.CLSActivityItem

public class CLSActivityItem : ClassKit.CLSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSActivityItem (Foundation.NSCoder coder);
	protected CLSActivityItem (Foundation.NSObjectFlag t);
	protected CLSActivityItem (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual string Title { get; set; }
}

New Type: ClassKit.CLSBinaryItem

public class CLSBinaryItem : ClassKit.CLSActivityItem, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSBinaryItem (Foundation.NSCoder coder);
	protected CLSBinaryItem (Foundation.NSObjectFlag t);
	protected CLSBinaryItem (IntPtr handle);
	public CLSBinaryItem (string identifier, string title, CLSBinaryValueType valueType);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Value { get; set; }
	public virtual CLSBinaryValueType ValueType { get; }
}

New Type: ClassKit.CLSBinaryValueType

[Serializable]
public enum CLSBinaryValueType {
	PassFail = 1,
	TrueFalse = 0,
	YesNo = 2,
}

New Type: ClassKit.CLSContext

public class CLSContext : ClassKit.CLSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSContext (Foundation.NSCoder coder);
	protected CLSContext (Foundation.NSObjectFlag t);
	protected CLSContext (IntPtr handle);
	public CLSContext (CLSContextType type, string identifier, string title);
	// properties
	public virtual bool Active { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual CLSActivity CurrentActivity { get; }
	public virtual nint DisplayOrder { get; set; }
	public virtual string Identifier { get; }
	public virtual CLSContext Parent { get; }
	public virtual string Title { get; set; }
	public CLSContextTopic Topic { get; set; }
	public virtual CLSContextType Type { get; }
	public virtual Foundation.NSUrl UniversalLinkUrl { get; set; }
	protected virtual Foundation.NSString WeakTopic { get; set; }
	// methods
	public virtual void AddChild (CLSContext childContext);
	public virtual void BecomeActive ();
	public virtual CLSActivity CreateNewActivity ();
	protected override void Dispose (bool disposing);
	public virtual void FindDescendantMatching (string[] identifierPath, System.Action<CLSContext,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<CLSContext> FindDescendantMatchingAsync (string[] identifierPath);
	public virtual void RemoveFromParent ();
	public virtual void ResignActive ();
}

New Type: ClassKit.CLSContextTopic

[Serializable]
public enum CLSContextTopic {
	ArtsAndMusic = 6,
	ComputerScienceAndEngineering = 5,
	HealthAndFitness = 7,
	LiteracyAndWriting = 2,
	Math = 0,
	Science = 1,
	SocialScience = 4,
	WorldLanguage = 3,
}

New Type: ClassKit.CLSContextTopicExtensions

public static class CLSContextTopicExtensions {
	// methods
	public static Foundation.NSString GetConstant (this CLSContextTopic self);
	public static CLSContextTopic GetValue (Foundation.NSString constant);
}

New Type: ClassKit.CLSContextType

[Serializable]
public enum CLSContextType {
	App = 1,
	Audio = 14,
	Book = 11,
	Challenge = 7,
	Chapter = 2,
	Document = 13,
	Exercise = 9,
	Game = 12,
	Lesson = 10,
	Level = 4,
	None = 0,
	Page = 5,
	Quiz = 8,
	Section = 3,
	Task = 6,
	Video = 15,
}

New Type: ClassKit.CLSDataStore

public class CLSDataStore : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CLSDataStore (Foundation.NSObjectFlag t);
	protected CLSDataStore (IntPtr handle);
	// properties
	public virtual CLSContext ActiveContext { get; }
	public override IntPtr ClassHandle { get; }
	public ICLSDataStoreDelegate Delegate { get; set; }
	public virtual CLSContext MainAppContext { get; }
	public virtual CLSActivity RunningActivity { get; }
	public static CLSDataStore Shared { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void FindContextsMatching (Foundation.NSPredicate predicate, System.Action<CLSContext[],Foundation.NSError> completion);
	public virtual void FindContextsMatching (string[] identifierPath, System.Action<CLSContext[],Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<CLSContext[]> FindContextsMatchingAsync (Foundation.NSPredicate predicate);
	public virtual System.Threading.Tasks.Task<CLSContext[]> FindContextsMatchingAsync (string[] identifierPath);
	public virtual void Remove (CLSContext context);
	public virtual void Save (System.Action<Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task SaveAsync ();
}

New Type: ClassKit.CLSDataStoreDelegate

public abstract class CLSDataStoreDelegate : Foundation.NSObject, ICLSDataStoreDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CLSDataStoreDelegate ();
	protected CLSDataStoreDelegate (Foundation.NSObjectFlag t);
	protected CLSDataStoreDelegate (IntPtr handle);
	// methods
	public virtual CLSContext CreateContext (string identifier, CLSContext parentContext, string[] parentIdentifierPath);
}

New Type: ClassKit.CLSErrorCode

[Serializable]
public enum CLSErrorCode {
	AuthorizationDenied = 4,
	ClassKitUnavailable = 1,
	DatabaseInaccessible = 5,
	InvalidArgument = 2,
	InvalidCreate = 7,
	InvalidModification = 3,
	InvalidUpdate = 8,
	Limits = 6,
	None = 0,
	PartialFailure = 9,
}

New Type: ClassKit.CLSErrorCodeExtensions

public static class CLSErrorCodeExtensions {
	// methods
	public static Foundation.NSString GetDomain (this CLSErrorCode self);
}

New Type: ClassKit.CLSErrorUserInfoKeys

public static class CLSErrorUserInfoKeys {
	// properties
	public static Foundation.NSString ObjectKey { get; }
	public static Foundation.NSString UnderlyingErrorsKey { get; }
}

New Type: ClassKit.CLSObject

public class CLSObject : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSObject (Foundation.NSCoder coder);
	protected CLSObject (Foundation.NSObjectFlag t);
	protected CLSObject (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate DateCreated { get; }
	public virtual Foundation.NSDate DateLastModified { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: ClassKit.CLSPredicateKeyPath

public static class CLSPredicateKeyPath {
	// properties
	public static Foundation.NSString DateCreated { get; }
	public static Foundation.NSString Identifier { get; }
	public static Foundation.NSString Parent { get; }
	public static Foundation.NSString Title { get; }
	public static Foundation.NSString Topic { get; }
	public static Foundation.NSString UniversalLinkUrl { get; }
}

New Type: ClassKit.CLSQuantityItem

public class CLSQuantityItem : ClassKit.CLSActivityItem, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSQuantityItem (Foundation.NSCoder coder);
	protected CLSQuantityItem (Foundation.NSObjectFlag t);
	protected CLSQuantityItem (IntPtr handle);
	public CLSQuantityItem (string identifier, string title);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Quantity { get; set; }
}

New Type: ClassKit.CLSScoreItem

public class CLSScoreItem : ClassKit.CLSActivityItem, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSScoreItem (Foundation.NSCoder coder);
	protected CLSScoreItem (Foundation.NSObjectFlag t);
	protected CLSScoreItem (IntPtr handle);
	public CLSScoreItem (string identifier, string title, double score, double maxScore);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double MaxScore { get; set; }
	public virtual double Score { get; set; }
}

New Type: ClassKit.ICLSDataStoreDelegate

public interface ICLSDataStoreDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual CLSContext CreateContext (string identifier, CLSContext parentContext, string[] parentIdentifierPath);
}