Skip to content

Instantly share code, notes, and snippets.

@vs-mobiletools-engineering-service2
Created September 3, 2023 19:09
Show Gist options
  • Save vs-mobiletools-engineering-service2/38fb0ef5c5160b993361ffe14660516d to your computer and use it in GitHub Desktop.
Save vs-mobiletools-engineering-service2/38fb0ef5c5160b993361ffe14660516d to your computer and use it in GitHub Desktop.
previous-api-comparison/ios-api-diff.md
title description author ms.author ms.date ms.topic ms.assetid ms.prod
Xamarin.iOS SDK API diff
List of API changes for Xamarin.iOS.
spouliot
sepoulio
9/3/2023
article
f7934223-2a8c-d5d4-788f-79d2f8610aa7
xamarin

Xamarin.iOS SDK API diff

Namespace CoreMotion

New Type: CoreMotion.CMBatchedSensorManager

public class CMBatchedSensorManager : Foundation.NSObject {
	// constructors
	public CMBatchedSensorManager ();
	protected CMBatchedSensorManager (Foundation.NSObjectFlag t);
	protected CMBatchedSensorManager (IntPtr handle);
	// properties
	public virtual bool AccelerometerActive { get; }
	public virtual CMAccelerometerData[] AccelerometerBatch { get; }
	public virtual nint AccelerometerDataFrequency { get; }
	public static bool AccelerometerSupported { get; }
	public static CMAuthorizationStatus AuthorizationStatus { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool DeviceMotionActive { get; }
	public virtual CMDeviceMotion[] DeviceMotionBatch { get; }
	public virtual nint DeviceMotionDataFrequency { get; }
	public static bool DeviceMotionSupported { get; }
	// methods
	public virtual void StartAccelerometerUpdates ();
	public virtual void StartAccelerometerUpdates (System.Action<CMAccelerometerData[],Foundation.NSError> handler);
	public virtual void StartDeviceMotionUpdates ();
	public virtual void StartDeviceMotionUpdates (System.Action<CMDeviceMotion[],Foundation.NSError> handler);
	public virtual void StopAccelerometerUpdates ();
	public virtual void StopDeviceMotionUpdates ();
}

New Type: CoreMotion.CMHighFrequencyHeartRateData

public class CMHighFrequencyHeartRateData : CoreMotion.CMLogItem {
	// constructors
	public CMHighFrequencyHeartRateData ();
	public CMHighFrequencyHeartRateData (Foundation.NSCoder coder);
	protected CMHighFrequencyHeartRateData (Foundation.NSObjectFlag t);
	protected CMHighFrequencyHeartRateData (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CMHighFrequencyHeartRateDataConfidence Confidence { get; }
	public virtual Foundation.NSDate Date { get; }
	public virtual double HeartRate { get; }
}

New Type: CoreMotion.CMHighFrequencyHeartRateDataConfidence

[Serializable]
public enum CMHighFrequencyHeartRateDataConfidence {
	High = 2,
	Highest = 3,
	Low = 0,
	Medium = 1,
}

New Type: CoreMotion.CMOdometerData

public class CMOdometerData : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public CMOdometerData ();
	public CMOdometerData (Foundation.NSCoder coder);
	protected CMOdometerData (Foundation.NSObjectFlag t);
	protected CMOdometerData (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double DeltaAltitude { get; }
	public virtual double DeltaDistance { get; }
	public virtual double DeltaDistanceAccuracy { get; }
	public virtual Foundation.NSDate EndDate { get; }
	public virtual Foundation.NSDate GpsDate { get; }
	public virtual Foundation.NSNumber MaxAbsSlope { get; }
	public virtual CMOdometerOriginDevice OriginDevice { get; }
	public virtual Foundation.NSNumber Slope { get; }
	public virtual double Speed { get; }
	public virtual double SpeedAccuracy { get; }
	public virtual Foundation.NSDate StartDate { get; }
	public virtual double VerticalAccuracy { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreMotion.CMOdometerOriginDevice

[Serializable]
public enum CMOdometerOriginDevice {
	Local = 1,
	Remote = 2,
	Unknown = 0,
}

New Type: CoreMotion.CMWaterSubmersionDepthState

[Serializable]
public enum CMWaterSubmersionDepthState {
	ApproachingMaxDepth = 400,
	NotSubmerged = 100,
	PastMaxDepth = 500,
	SensorDepthError = 600,
	SubmergedDeep = 300,
	SubmergedShallow = 200,
	Unknown = 0,
}

New Type: CoreMotion.CMWaterSubmersionEvent

public class CMWaterSubmersionEvent : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public CMWaterSubmersionEvent ();
	public CMWaterSubmersionEvent (Foundation.NSCoder coder);
	protected CMWaterSubmersionEvent (Foundation.NSObjectFlag t);
	protected CMWaterSubmersionEvent (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate Date { get; }
	public virtual CMWaterSubmersionState State { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreMotion.CMWaterSubmersionManager

public class CMWaterSubmersionManager : Foundation.NSObject {
	// constructors
	public CMWaterSubmersionManager ();
	protected CMWaterSubmersionManager (Foundation.NSObjectFlag t);
	protected CMWaterSubmersionManager (IntPtr handle);
	// properties
	public static CMAuthorizationStatus AuthorizationStatus { get; }
	public override IntPtr ClassHandle { get; }
	public ICMWaterSubmersionManagerDelegate Delegate { get; set; }
	public static bool IsWaterSubmersionAvailable { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitLength> MaximumDepth { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: CoreMotion.CMWaterSubmersionManagerDelegate

public abstract class CMWaterSubmersionManagerDelegate : Foundation.NSObject, ICMWaterSubmersionManagerDelegate, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected CMWaterSubmersionManagerDelegate ();
	protected CMWaterSubmersionManagerDelegate (Foundation.NSObjectFlag t);
	protected CMWaterSubmersionManagerDelegate (IntPtr handle);
	// methods
	public virtual void DidUpdateEvent (CMWaterSubmersionManager manager, CMWaterSubmersionEvent event);
	public virtual void DidUpdateMeasurement (CMWaterSubmersionManager manager, CMWaterSubmersionMeasurement measurement);
	public virtual void DidUpdateTemperature (CMWaterSubmersionManager manager, CMWaterTemperature measurement);
	public virtual void ErrorOccurred (CMWaterSubmersionManager manager, Foundation.NSError error);
}

New Type: CoreMotion.CMWaterSubmersionMeasurement

public class CMWaterSubmersionMeasurement : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public CMWaterSubmersionMeasurement ();
	public CMWaterSubmersionMeasurement (Foundation.NSCoder coder);
	protected CMWaterSubmersionMeasurement (Foundation.NSObjectFlag t);
	protected CMWaterSubmersionMeasurement (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate Date { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitLength> Depth { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitPressure> Pressure { get; }
	public virtual CMWaterSubmersionDepthState SubmersionState { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitPressure> SurfacePressure { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreMotion.CMWaterSubmersionState

[Serializable]
public enum CMWaterSubmersionState {
	NotSubmerged = 1,
	Submerged = 2,
	Unknown = 0,
}

New Type: CoreMotion.CMWaterTemperature

public class CMWaterTemperature : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public CMWaterTemperature ();
	public CMWaterTemperature (Foundation.NSCoder coder);
	protected CMWaterTemperature (Foundation.NSObjectFlag t);
	protected CMWaterTemperature (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate Date { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitTemperature> Temperature { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitTemperature> TemperatureUncertainty { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreMotion.ICMWaterSubmersionManagerDelegate

public interface ICMWaterSubmersionManagerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidUpdateEvent (CMWaterSubmersionManager manager, CMWaterSubmersionEvent event);
	public virtual void DidUpdateMeasurement (CMWaterSubmersionManager manager, CMWaterSubmersionMeasurement measurement);
	public virtual void DidUpdateTemperature (CMWaterSubmersionManager manager, CMWaterTemperature measurement);
	public virtual void ErrorOccurred (CMWaterSubmersionManager manager, Foundation.NSError error);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment