# API diff: Microsoft.tvOS.dll ## Microsoft.tvOS.dll <h4>Assembly Version Changed: 18.0.0.0 -> 18.2.0.0</h4> ### Namespace AVFoundation #### New Type: AVFoundation.AVAudioApplication ```csharp public class AVAudioApplication : Foundation.NSObject { // constructors protected AVAudioApplication (Foundation.NSObjectFlag t); protected AVAudioApplication (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual bool InputMuted { get; } public virtual AVAudioApplicationRecordPermission RecordPermission { get; } public static AVAudioApplication SharedInstance { get; } // methods public static void RequestRecordPermission (System.Action<bool> response); public static System.Threading.Tasks.Task<bool> RequestRecordPermissionAsync (); public virtual bool SetInputMuted (bool muted, out Foundation.NSError outError); } ``` #### New Type: AVFoundation.AVAudioApplicationRecordPermission ```csharp [Serializable] public enum AVAudioApplicationRecordPermission { Denied = 1684369017, Granted = 1735552628, Undetermined = 1970168948, } ``` #### New Type: AVFoundation.AVCaptureReactionType ```csharp [Serializable] public enum AVCaptureReactionType { Balloons = 2, Confetti = 6, Fireworks = 4, Heart = 3, Lasers = 7, Rain = 5, ThumbsDown = 1, ThumbsUp = 0, } ``` #### New Type: AVFoundation.AVCaptureReactionTypeExtensions ```csharp public static class AVCaptureReactionTypeExtensions { // methods public static Foundation.NSString GetConstant (this AVCaptureReactionType self); public static AVCaptureReactionType GetValue (Foundation.NSString constant); } ``` ### Namespace AudioUnit #### Type Changed: AudioUnit.AudioComponentStatus Added value: ```csharp InstanceTimedOut = -66754, ``` #### Type Changed: AudioUnit.AudioUnitStatus Added values: ```csharp ComponentManagerNotSupported = -66740, InvalidFilePath = -66742, MissingKey = -66741, MultipleVoiceProcessors = -66635, RenderTimeout = -66745, ``` ### Namespace CoreImage #### New Type: CoreImage.CIDistanceGradientFromRedMask ```csharp public class CIDistanceGradientFromRedMask : CoreImage.CIFilter, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable { // constructors public CIDistanceGradientFromRedMask (); public CIDistanceGradientFromRedMask (Foundation.NSCoder coder); protected CIDistanceGradientFromRedMask (Foundation.NSObjectFlag t); protected CIDistanceGradientFromRedMask (ObjCRuntime.NativeHandle handle); // properties public CIImage InputImage { get; set; } public int MaximumDistance { get; set; } public virtual CIImage OutputImage { get; } } ``` ### Namespace CoreLocation #### Type Changed: CoreLocation.CLLocation Obsoleted properties: ```diff [Obsolete ("Use 'AccuracyBestForNavigation' instead.")] public static double AccurracyBestForNavigation { get; } ``` Added property: ```csharp public static double AccuracyBestForNavigation { get; } ``` ### Namespace NetworkExtension #### Type Changed: NetworkExtension.NEProviderStopReason Added value: ```csharp InternalError = 17, ``` ### Namespace ObjCRuntime #### Type Changed: ObjCRuntime.Constants Modified fields: ```diff -public const string SdkVersion = "18.0"; +public const string SdkVersion = "18.2"; -public const string Version = "17.99.0"; +public const string Version = "18.2.9057"; ``` ### Namespace TVServices #### Type Changed: TVServices.TVUserActivityType Added property: ```csharp public static Foundation.NSString BrowsingEntertainmentContent { get; } ``` ### Namespace UIKit #### Type Changed: UIKit.UIApplication Added property: ```csharp public static Foundation.NSString UIApplicationOpenDefaultApplicationsSettingsUrlString { get; } ``` #### Type Changed: UIKit.UIBarButtonSystemItem Added value: ```csharp WritingTools = 25, ``` #### Type Changed: UIKit.UIMenuIdentifier Added value: ```csharp Open = 48, ``` #### Type Changed: UIKit.UIPresentationController Added methods: ```csharp public virtual IUITraitChangeRegistration RegisterForTraitChanges<T> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3, T4> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler, System.Type[] traits); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, ObjCRuntime.Selector action); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, Foundation.NSObject target, ObjCRuntime.Selector action); ``` #### Type Changed: UIKit.UIPressType Added values: ```csharp TVRemoteFourColors = 33, TVRemoteOneTwoThree = 32, ``` #### Type Changed: UIKit.UITraitCollection Obsoleted methods: ```diff [Obsolete ("Use the overload that takes a 'UITraitMutations' parameter instead.")] public virtual UITraitCollection GetTraitCollectionByModifyingTraits (System.Func<IUIMutableTraits> mutations); [Obsolete ("Use the overload that takes a 'UITraitMutations' parameter instead.")] public static UITraitCollection GetTraitCollectionWithTraits (System.Func<IUIMutableTraits> mutations); ``` Added methods: ```csharp public virtual UITraitCollection GetTraitCollectionByModifyingTraits (UITraitMutations mutations); public static UITraitCollection GetTraitCollectionWithTraits (UITraitMutations mutations); ``` #### Type Changed: UIKit.UIView Added methods: ```csharp public virtual IUITraitChangeRegistration RegisterForTraitChanges<T> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3, T4> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler, System.Type[] traits); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, ObjCRuntime.Selector action); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, Foundation.NSObject target, ObjCRuntime.Selector action); ``` #### Type Changed: UIKit.UIViewController Added methods: ```csharp public virtual IUITraitChangeRegistration RegisterForTraitChanges<T> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3, T4> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler, System.Type[] traits); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, ObjCRuntime.Selector action); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, Foundation.NSObject target, ObjCRuntime.Selector action); ``` #### Type Changed: UIKit.UIWindowScene Added methods: ```csharp public virtual IUITraitChangeRegistration RegisterForTraitChanges<T> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3, T4> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler, System.Type[] traits); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, ObjCRuntime.Selector action); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler); public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, Foundation.NSObject target, ObjCRuntime.Selector action); ``` #### New Type: UIKit.UITraitMutations ```csharp public sealed delegate UITraitMutations : System.MulticastDelegate { // constructors public UITraitMutations (object object, IntPtr method); // methods public virtual System.IAsyncResult BeginInvoke (IUIMutableTraits mutableTraits, System.AsyncCallback callback, object object); public virtual void EndInvoke (System.IAsyncResult result); public virtual void Invoke (IUIMutableTraits mutableTraits); } ``` ### Namespace UniformTypeIdentifiers #### Type Changed: UniformTypeIdentifiers.UTTypes Added property: ```csharp public static UTType JpegXl { get; } ``` ### Namespace Vision #### Type Changed: Vision.VNCircle Added constructor: ```csharp public VNCircle (VNPoint center, double radiusOrDiameter, VNCircleInitializationOption option); ``` #### Type Changed: Vision.VNUtils Added property: ```csharp public static double VisionVersionNumber { get; } ``` #### Type Changed: Vision.VNVector Added constructor: ```csharp public VNVector (System.ValueTuple<System.Double,System.Double> polarCoordinates); ``` #### New Type: Vision.VNCircleInitializationOption ```csharp [Serializable] public enum VNCircleInitializationOption { Diameter = 1, Radius = 0, } ``` ### New Namespace ObjCBindings #### New Type: ObjCBindings.BindingTypeAttribute ```csharp public class BindingTypeAttribute : System.Attribute { // constructors public BindingTypeAttribute (); // properties public string Name { get; set; } } ``` #### New Type: ObjCBindings.Constructor ```csharp [Serializable] [Flags] public enum Constructor { Default = 0, DesignatedInitializer = 4, } ``` #### New Type: ObjCBindings.EnumValue ```csharp [Serializable] [Flags] public enum EnumValue { None = 0, } ``` #### New Type: ObjCBindings.ExportAttribute`1 ```csharp public class ExportAttribute`1 : System.Attribute { // constructors protected ExportAttribute`1 (); public ExportAttribute`1 (string selector); public ExportAttribute`1 (string selector, ObjCRuntime.ArgumentSemantic semantic); public ExportAttribute`1 (string selector, T flags); public ExportAttribute`1 (string selector, ObjCRuntime.ArgumentSemantic semantic, T flags); // properties public ObjCRuntime.ArgumentSemantic ArgumentSemantic { get; set; } public T Flags { get; set; } public string Selector { get; set; } } ``` #### New Type: ObjCBindings.Field ```csharp [Serializable] [Flags] public enum Field { None = 0, } ``` #### New Type: ObjCBindings.FieldAttribute`1 ```csharp public class FieldAttribute`1 : System.Attribute { // constructors public FieldAttribute`1 (string symbolName); public FieldAttribute`1 (string symbolName, string libraryName); public FieldAttribute`1 (string symbolName, T flags); public FieldAttribute`1 (string symbolName, string libraryName, T flags); // properties public T Flags { get; set; } public string LibraryName { get; set; } public string SymbolName { get; set; } } ``` #### New Type: ObjCBindings.Method ```csharp [Serializable] [Flags] public enum Method { Default = 0, IgnoredInDelegate = 8, IsVariadic = 4, MarshalNativeExceptions = 16, } ``` #### New Type: ObjCBindings.Property ```csharp [Serializable] [Flags] public enum Property { Default = 0, IsThreadStaticAttribute = 4, Notification = 8, } ```