Xamarin.iOS SDK API diff: 14.4.1 vs 14.6.0

MonoTouch.NUnitLite.dll

Namespace MonoTouch.NUnit.UI

Type Changed: MonoTouch.NUnit.UI.BaseTouchRunner

Added property:

public System.Collections.Generic.HashSet<string> ExcludedCategories { get; set; }

Removed method:

public NUnit.Framework.Internal.TestResult Run (NUnit.Framework.Internal.Test test);

Added methods:

public void NotifySelectedTest (NUnit.Framework.Api.ITest test);
public void Run (NUnit.Framework.Internal.Test test);
public System.Threading.Tasks.Task RunAsync ();
public void SelectLastTestSuite ();
public virtual void Show (NUnit.Framework.Internal.TestSuite suite);

Type Changed: MonoTouch.NUnit.UI.TouchOptions

Added constructor:

public TouchOptions (System.Collections.Generic.IList<string> arguments);

Removed field:

public static TouchOptions Current;

Added properties:

public static TouchOptions Current { get; set; }
public string TestName { get; set; }

Type Changed: MonoTouch.NUnit.UI.TouchRunner

Modified methods:

 public ---override--- void Show (NUnit.Framework.Internal.TestSuite suite)

Xamarin.iOS.dll

Namespace AVFoundation

Type Changed: AVFoundation.AVAudio3DMixingRenderingAlgorithm

Added values:

Auto = 7,
HrtfHQ = 6,

Type Changed: AVFoundation.AVError

Added values:

CreateContentKeyRequestFailed = -11860,
ExternalPlaybackNotSupportedForAsset = -11870,
IncorrectlyConfigured = -11875,
OperationNotSupportedForPreset = -11871,
RosettaNotInstalled = -11877,
SegmentStartedWithNonSyncSample = -11876,
SessionHardwareCostOverage = -11872,
UnsupportedDeviceActiveFormat = -11873,

Namespace AVKit

Type Changed: AVKit.AVPictureInPictureController

Added property:

public virtual bool CanStartPictureInPictureAutomaticallyFromInline { get; set; }

Type Changed: AVKit.AVPlayerViewController

Added property:

public virtual bool CanStartPictureInPictureAutomaticallyFromInline { get; set; }

Namespace AudioToolbox

Type Changed: AudioToolbox.SmpteTimeType

Obsoleted fields:

 [Obsolete ("Value is not to be used with any API.")]
 None = 4294967295,

Modified fields:

-None = 0
+None = 4294967295
-Type2398 = 12
+Type2398 = 11
-Type24 = 1
+Type24 = 0
-Type25 = 2
+Type25 = 1
-Type2997 = 5
+Type2997 = 4
-Type2997Drop = 6
+Type2997Drop = 5
-Type30 = 4
+Type30 = 3
-Type30Drop = 3
+Type30Drop = 2
-Type50 = 11
+Type50 = 10
-Type5994 = 8
+Type5994 = 7
-Type5994Drop = 10
+Type5994Drop = 9
-Type60 = 7
+Type60 = 6
-Type60Drop = 9
+Type60Drop = 8

Namespace AudioUnit

Type Changed: AudioUnit.AUSpatializationAlgorithm

Added value:

UseOutputType = 7,

Namespace Contacts

Type Changed: Contacts.CNErrorCode

Added values:

ChangeHistoryExpired = 603,
ChangeHistoryInvalidAnchor = 604,
ClientIdentifierCollision = 602,

Namespace CoreBluetooth

Type Changed: CoreBluetooth.CBError

Added value:

TooManyLEPairedDevices = 16,

Namespace CoreData

Type Changed: CoreData.NSPersistentStoreRequestType

Added value:

BatchInsert = 5,

Namespace CoreHaptics

Type Changed: CoreHaptics.CHHapticEngineStoppedReason

Added values:

EngineDestroyed = 5,
GameControllerDisconnect = 6,

Namespace CoreLocation

Type Changed: CoreLocation.CLError

Added value:

PromptDeclined = 18,

Namespace CoreMidi

Type Changed: CoreMidi.MidiCIDiscoveredNode

Added constructor:

public MidiCIDiscoveredNode (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Namespace CoreNFC

Type Changed: CoreNFC.NFCReaderError

Modified fields:

-NdefReaderSessionErrorTagNotWritable = 301
+NdefReaderSessionErrorTagNotWritable = 400
-NdefReaderSessionErrorTagSizeTooSmall = 303
+NdefReaderSessionErrorTagSizeTooSmall = 402
-NdefReaderSessionErrorTagUpdateFailure = 302
+NdefReaderSessionErrorTagUpdateFailure = 401
-NdefReaderSessionErrorZeroLengthMessage = 304
+NdefReaderSessionErrorZeroLengthMessage = 403

Added values:

RadioDisabled = 6,
ReaderTransceiveErrorPacketTooLong = 105,

Namespace CoreText

Type Changed: CoreText.CTFontOptions

Obsoleted fields:

 [Obsolete ("This API is not available on this platform.")]
 IncludeDisabled = 128,

Type Changed: CoreText.CTFrameProgression

Added value:

LeftToRight = 2,

Namespace CoreVideo

Type Changed: CoreVideo.CVImageBuffer

Obsoleted properties:

 [Obsolete ("This API is not available on this platform.")]
 public CoreGraphics.CGColorSpace ColorSpace { get; }

Namespace FileProvider

Type Changed: FileProvider.NSFileProviderItemCapabilities

Obsoleted fields:

 [Obsolete ("This enum value is not constant across OS and versions.")]
 All = 63,

Added value:

Evicting = 64,

Namespace Foundation

Type Changed: Foundation.NSActivityOptions

Added value:

InitiatedAllowingIdleSystemSleep = 15728639,

Type Changed: Foundation.NSDataReadingOptions

Obsoleted fields:

 [Obsolete ("This option is unavailable.")]
 Coordinated = 4,

Type Changed: Foundation.NSDateFormatterBehavior

Added value:

Mode_10_0 = 1000,

Type Changed: Foundation.NSDirectoryEnumerationOptions

Obsoleted fields:

 [Obsolete ("Use 'None' instead.")]
 SkipsNone = 0,

Added value:

None = 0,

Type Changed: Foundation.NSFileCoordinatorWritingOptions

Added value:

ContentIndependentMetadataOnly = 16,

Type Changed: Foundation.NSNumberFormatterStyle

Added values:

CurrencyAccountingStyle = 10,
CurrencyIsoCodeStyle = 8,
CurrencyPluralStyle = 9,
OrdinalStyle = 6,

Namespace GameKit

Type Changed: GameKit.GKError

Added values:

ApiObsolete = 34,
ConnectionTimeout = 33,
NotAuthorized = 32,

Type Changed: GameKit.GKGameCenterViewControllerState

Added values:

Dashboard = 4,
LocalPlayerProfile = 3,

Type Changed: GameKit.GKPeerConnectionState

Added value:

ConnectedRelay = 5,

Namespace HealthKit

Type Changed: HealthKit.HKCategoryTypeIdentifier

Added value:

HeadphoneAudioExposureEvent = 54,

Type Changed: HealthKit.HKCategoryValueMenstrualFlow

Added value:

None = 5,

Type Changed: HealthKit.HKErrorCode

Modified fields:

-NoData = 10
+NoData = 11

Added value:

RequiredAuthorizationDenied = 10,

Type Changed: HealthKit.HKMetadataKey

Added property:

public static Foundation.NSString AudioExposureDuration { get; }

Type Changed: HealthKit.HKWorkoutActivityType

Added values:

CardioDance = 77,
Cooldown = 80,
Pickleball = 79,
SocialDance = 78,

New Type: HealthKit.HKCategoryValueHeadphoneAudioExposureEvent

[Serializable]
public enum HKCategoryValueHeadphoneAudioExposureEvent {
	SevenDayLimit = 1,
}

Namespace Intents

Type Changed: Intents.INAddMediaMediaDestinationUnsupportedReason

Added value:

PlaylistNotEditable = 2,

Namespace MLCompute

Type Changed: MLCompute.MLCDataType

Added value:

Int32 = 7,

Type Changed: MLCompute.MLCDevice

Added method:

public static MLCDevice GetDevice (MLCDeviceType type, bool selectsMultipleComputeDevices);

Type Changed: MLCompute.MLCTrainingGraph

Added method:

public virtual bool BindOptimizer (MLCTensorData[] data, MLCTensorOptimizerDeviceData[] deviceData, MLCTensor tensor);

Namespace MapKit

Type Changed: MapKit.MKAnnotationViewCollisionMode

Added value:

None = 2,

Type Changed: MapKit.MKErrorCode

Added value:

DecodingFailed = 6,

Namespace Metal

Type Changed: Metal.MTLArgumentType

Added values:

InstanceAccelerationStructure = 26,
IntersectionFunctionTable = 27,
PrimitiveAccelerationStructure = 25,
VisibleFunctionTable = 24,

Type Changed: Metal.MTLBlendFactor

Added values:

OneMinusSource1Alpha = 18,
OneMinusSource1Color = 16,
Source1Alpha = 17,
Source1Color = 15,

Type Changed: Metal.MTLCounterSampleBufferError

Modified fields:

-Internal = 1
+Internal = 2

Added value:

Invalid = 1,

Type Changed: Metal.MTLDataType

Added values:

ComputePipeline = 79,
InstanceAccelerationStructure = 118,
IntersectionFunctionTable = 116,
PrimitiveAccelerationStructure = 117,
VisibleFunctionTable = 115,

Type Changed: Metal.MTLFeatureSet

Added value:

tvOS_GPUFamily2_v2 = 30005,

Type Changed: Metal.MTLFunctionType

Added values:

Intersection = 6,
Visible = 5,

Type Changed: Metal.MTLHeapType

Added value:

Sparse = 2,

Type Changed: Metal.MTLIndirectCommandType

Added values:

ConcurrentDispatch = 32,
ConcurrentDispatchThreads = 64,

Type Changed: Metal.MTLLanguageVersion

Added values:

v2_2 = 131074,
v2_3 = 131075,

Type Changed: Metal.MTLPipelineOption

Added value:

FailOnBinaryArchiveMiss = 4,

Type Changed: Metal.MTLPixelFormat

Added values:

ASTC_10x10_HDR = 234,
ASTC_10x5_HDR = 231,
ASTC_10x6_HDR = 232,
ASTC_10x8_HDR = 233,
ASTC_12x10_HDR = 235,
ASTC_12x12_HDR = 236,
ASTC_4x4_HDR = 222,
ASTC_5x4_HDR = 223,
ASTC_5x5_HDR = 224,
ASTC_6x5_HDR = 225,
ASTC_6x6_HDR = 226,
ASTC_8x5_HDR = 228,
ASTC_8x6_HDR = 229,
ASTC_8x8_HDR = 230,
BC1RGBA = 130,
BC1_RGBA_sRGB = 131,
BC2RGBA = 132,
BC2_RGBA_sRGB = 133,
BC3RGBA = 134,
BC3_RGBA_sRGB = 135,
BC4_RSnorm = 141,
BC4_RUnorm = 140,
BC5_RGSnorm = 143,
BC5_RGUnorm = 142,
BC6H_RGBFloat = 150,
BC6H_RGBUFloat = 151,
BC7_RGBAUnorm = 152,
BC7_RGBAUnorm_sRGB = 153,
BGR10_XR = 554,
BGR10_XR_sRGB = 555,
BGRA10_XR = 552,
BGRA10_XR_sRGB = 553,
Depth16Unorm = 250,
Depth24Unorm_Stencil8 = 255,
X24_Stencil8 = 262,

Type Changed: Metal.MTLResourceOptions

Added values:

HazardTrackingModeTracked = 512,
StorageModeManaged = 16,

Type Changed: Metal.MTLStorageMode

Added value:

Managed = 1,

Type Changed: Metal.MTLTextureType

Added value:

kCubeArray = 6,

Type Changed: Metal.MTLTextureUsage

Obsoleted fields:

 [Obsolete ("This option is unavailable.")]
 Blit = 8,

Namespace MetalPerformanceShaders

Type Changed: MetalPerformanceShaders.MPSAccelerationStructureUsage

Added values:

PreferCpuBuild = 8,
PreferGpuBuild = 4,

Type Changed: MetalPerformanceShaders.MPSBoundingBoxIntersectionTestType

Added value:

Fast = 2,

Type Changed: MetalPerformanceShaders.MPSCnnNeuronType

Modified fields:

-Count = 15
+Count = 16

Added value:

GeLU = 15,

Type Changed: MetalPerformanceShaders.MPSMatrixRandomDistribution

Added value:

Normal = 3,

Type Changed: MetalPerformanceShaders.MPSRayDataType

Added value:

PackedOriginDirection = 3,

Namespace MetricKit

Type Changed: MetricKit.MXMetricManager

Added method:

public static CoreFoundation.OSLog MakeLogHandle (Foundation.NSString category);

Namespace Network

New Type: Network.NWConnectionGroup

public class NWConnectionGroup : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWConnectionGroup (NWMulticastGroup groupDescriptor, NWParameters parameters);
	protected NWConnectionGroup (IntPtr handle, bool owns);
	// properties
	public NWMulticastGroup GroupDescriptor { get; }
	public NWParameters Parameters { get; }
	// methods
	public void Cancel ();
	public NWConnection GetConnection (NWContentContext context);
	public NWEndpoint GetLocalEndpoint (NWContentContext context);
	public NWPath GetPath (NWContentContext context);
	public NWEndpoint GetRemmoteEndpoint (NWContentContext context);
	public void Reply (NWContentContext inboundMessage, NWContentContext outboundMessage, CoreFoundation.DispatchData content);
	public void Send (CoreFoundation.DispatchData content, NWEndpoint endpoint, NWContentContext context, System.Action<NWError> handler);
	public void SetQueue (CoreFoundation.DispatchQueue queue);
	public void SetReceiveHandler (uint maximumMessageSize, bool rejectOversizedMessages, NWConnectionGroupReceiveDelegate handler);
	public void SetStateChangedHandler (NWConnectionGroupStateChangedDelegate handler);
	public void Start ();
}

New Type: Network.NWConnectionGroupReceiveDelegate

public sealed delegate NWConnectionGroupReceiveDelegate : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NWConnectionGroupReceiveDelegate (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CoreFoundation.DispatchData content, NWContentContext context, bool isCompleted, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CoreFoundation.DispatchData content, NWContentContext context, bool isCompleted);
}

New Type: Network.NWConnectionGroupState

[Serializable]
public enum NWConnectionGroupState {
	Cancelled = 4,
	Failed = 3,
	Invalid = 0,
	Ready = 2,
	Waiting = 1,
}

New Type: Network.NWConnectionGroupStateChangedDelegate

public sealed delegate NWConnectionGroupStateChangedDelegate : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NWConnectionGroupStateChangedDelegate (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NWConnectionGroupState state, NWError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (NWConnectionGroupState state, NWError error);
}

New Type: Network.NWMulticastGroup

public class NWMulticastGroup : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWMulticastGroup (NWEndpoint endpoint);
	// properties
	public bool DisabledUnicastTraffic { get; set; }
	// methods
	public void AddEndpoint (NWEndpoint endpoint);
	public void EnumerateEndpoints (System.Func<NWEndpoint,System.Boolean> handler);
	public void SetSpecificSource (NWEndpoint endpoint);
}

Namespace NetworkExtension

Type Changed: NetworkExtension.NEFilterReportEvent

Added value:

Statistics = 4,

Type Changed: NetworkExtension.NEProviderStopReason

Added values:

AppUpdate = 16,
Sleep = 15,

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string SdkVersion = "14.1";
+public const string SdkVersion = "14.2";
-public const string Version = "14.4.1";
+public const string Version = "14.6.0";

Namespace PassKit

Type Changed: PassKit.PKPaymentButtonStyle

Added value:

Automatic = 3,

Type Changed: PassKit.PKPaymentButtonType

Added values:

AddMoney = 9,
Book = 5,
Checkout = 6,
Contribute = 14,
Order = 11,
Reload = 8,
Rent = 12,
Subscribe = 7,
Support = 13,
Tip = 15,
TopUp = 10,

Namespace Photos

Type Changed: Photos.PHCollectionListChangeRequest

Added method:

public static PHCollectionListChangeRequest ChangeRequestForTopLevelCollectionList (PHFetchResult childCollections);

Namespace ReplayKit

Type Changed: ReplayKit.RPRecordingError

Added values:

FilePermissions = -5835,
InvalidParameter = -5834,

Namespace Security

Type Changed: Security.SecAuthenticationType

Modified fields:

-Default = 7
+Default = 1953261156
-Dpa = 2
+Dpa = 1633775716
-HtmlForm = 6
+HtmlForm = 1836216166
-HttpBasic = 4
+HttpBasic = 1886680168
-HttpDigest = 5
+HttpDigest = 1685353576
-Msn = 1
+Msn = 1634628461
-Ntlm = 0
+Ntlm = 1835824238
-Rpa = 3
+Rpa = 1633775730

Added value:

Any = 0,

Type Changed: Security.SslProtocol

Added value:

Dtls_1_2 = 11,

Namespace StoreKit

Type Changed: StoreKit.SKError

Added values:

IneligibleForOffer = 18,
OverlayCancelled = 15,
OverlayInvalidConfiguration = 16,
OverlayTimeout = 17,
UnsupportedPlatform = 19,

Namespace UIKit

Type Changed: UIKit.UIButton

Type Changed: UIKit.UIButton.UIButtonAppearance

Added property:

public virtual UIEdgeInsets ContentEdgeInsets { get; set; }

Added method:

public virtual void SetPreferredSymbolConfiguration (UIImageSymbolConfiguration configuration, UIControlState state);

Type Changed: UIKit.UIDocumentBrowserErrorCode

Added value:

NoLocationAvailable = 2,

Type Changed: UIKit.UINavigationBar

Type Changed: UIKit.UINavigationBar.UINavigationBarAppearance

Added property:

public virtual bool PrefersLargeTitles { get; set; }

Type Changed: UIKit.UIRectCorner

Modified fields:

-AllCorners = 4294967295
+AllCorners = 18446744073709551615

Type Changed: UIKit.UISearchBar

Type Changed: UIKit.UISearchBar.UISearchBarAppearance

Added properties:

public virtual UIOffset SearchFieldBackgroundPositionAdjustment { get; set; }
public virtual UIOffset SearchTextPositionAdjustment { get; set; }

Added methods:

public virtual UIOffset GetPositionAdjustmentForSearchBarIcon (UISearchBarIcon icon);
public virtual void SetPositionAdjustmentforSearchBarIcon (UIOffset adjustment, UISearchBarIcon icon);

Type Changed: UIKit.UISegmentedControl

Type Changed: UIKit.UISegmentedControl.UISegmentedControlAppearance

Added property:

public virtual UIColor SelectedSegmentTintColor { get; set; }

Type Changed: UIKit.UITabBar

Type Changed: UIKit.UITabBar.UITabBarAppearance

Added properties:

public virtual UIBarStyle BarStyle { get; set; }
public virtual UITabBarItemPositioning ItemPositioning { get; set; }
public virtual nfloat ItemSpacing { get; set; }
public virtual nfloat ItemWidth { get; set; }
public virtual UIColor UnselectedItemTintColor { get; set; }

Type Changed: UIKit.UITabBarItem

Added method:

public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetBadgeTextAttributesDictionary (UIControlState state);

Type Changed: UIKit.UITabBarItem.UITabBarItemAppearance

Added property:

public virtual UIColor BadgeColor { get; set; }

Added method:

public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetBadgeTextAttributesDictionary (UIControlState state);

Type Changed: UIKit.UITableViewCell

Type Changed: UIKit.UITableViewCell.UITableViewCellAppearance

Added properties:

public virtual UITableViewCellFocusStyle FocusStyle { get; set; }
public virtual UIEdgeInsets SeparatorInset { get; set; }

Type Changed: UIKit.UIToolbar

Type Changed: UIKit.UIToolbar.UIToolbarAppearance

Added properties:

public virtual UIBarStyle BarStyle { get; set; }
public virtual bool Translucent { get; set; }

Type Changed: UIKit.UIUserInterfaceIdiom

Modified fields:

-Mac = 4
+Mac = 5

Type Changed: UIKit.UIWindowSceneSessionRole

Added value:

CarTemplateApplication = 2,

Namespace UserNotifications

Type Changed: UserNotifications.UNAuthorizationOptions

Added value:

Announcement = 128,

Namespace VideoSubscriberAccount

Type Changed: VideoSubscriberAccount.VSAccountMetadataRequest

Added property:

public virtual VSAccountApplicationProvider[] ApplicationAccountProviders { get; set; }

New Type: VideoSubscriberAccount.VSAccountApplicationProvider

public class VSAccountApplicationProvider : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VSAccountApplicationProvider (Foundation.NSObjectFlag t);
	protected VSAccountApplicationProvider (IntPtr handle);
	public VSAccountApplicationProvider (string localizedDisplayName, string identifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual string LocalizedDisplayName { get; }
}

Namespace VideoToolbox

Type Changed: VideoToolbox.VTVideoEncoder

Added properties:

public ulong? GpuRegistryId { get; }
public bool? InstanceLimit { get; }
public bool? IsHardwareAccelerated { get; }
public Foundation.NSNumber PerformanceRating { get; }
public Foundation.NSNumber QualityRating { get; }
public Foundation.NSDictionary SupportedSelectionProperties { get; }
public bool SupportsFrameReordering { get; }