Xamarin.Essentials 1.0 release notes

1.0.1

  • GH-649 Connectivity - Fix for duplicate connection profiles showing up
  • GH-656 Connectivity - Some Android devices were showing "Local" when in airplane mode.
  • GH-621 Permissions - Ensure we only call items on main thread when needed.

1.0.0

  • DeviceIdiom: now supports Watch on Android
  • SecureStorage: Several fixes for older devices
  • UnitConverters: New static helpers that convert units!

Migrating to 1.0.0

There were several breaking changes from earlier preview versions of Xamarin.Essentials. Here is a guide on transitioning:

  • All Sensors: Throw an InvalidOperationException if already monitoring
  • AppInfo: OpenSettings is now ShowSettingsUI
  • Barometer: Pressure is now PressureInHectopascals
  • Battery: If no battery 1 is returned for charge level
  • Battery: BatteryChangedEventArgs is now BatteryInfoChangedEventArgs
  • Browser: OpenAsync now returns a boolean if launched successfully
  • Browser: BrowserLaunchMode.SystemPrefered is now 0 and External is 1
  • Clipboard: SetText is now SetTextAsync
  • Compass: ApplyLowPassFilter is removed and now a parameter for Start
  • Connectivity: Profiles is now ConnectionProfiles
  • Connectivity: WiMAX is removed and now returns Cellular for ConnectionProfile
  • Connectivity: Other is now Unknown for ConnectionProfile and 0
  • Data Transfer: Renamed to Share
  • DeviceInfo.Idioms: DeviceInfo.Idioms no longer exists and is now DeviceIdiom
  • DeviceInfo.Platforms: DeviceInfo.Platforms no longer exist and is now DevicePlatform
  • DeviceDisplay: ScreenMetrics property is now MainDisplayInfo
  • DeviceDisplay: ScreenMetrics struct is now DisplayInfo
  • DeviceDisplay: ScreenRotation is now DisplayRotation
  • DeviceDisplay: ScreenOrientation is now DisplayRotation and returns Unknown if not known
  • DeviceDisplay: ScreenMetricsChanged is now MainDisplayInfoChanged
  • DeviceDisplay: ScreenMetricsChangedEventArgs is now DisplayInfoChangedEventArgs
  • Geocoding: MapKey for UWP is now Platform.MapServiceToken and only available in the UWP platform
  • Geolocation: GeolocationAccuracy now has a Default, which is Medium
  • Location: CalculateDistance parameters have changed, take in (LatitudeStart, LongitudeStart, LatitudeEnd, LongitudeEnd) for consistency.
  • Maps: Maps is now Map
  • Maps: MapDirectionMode is now NavigationMode
  • Maps: MapsLaunchOptions is now MapLaunchOptions
  • Platform: No longer exists in the .net standard library
  • Power: EnergySaver is now located in Battery
  • ScreenLock: Has moved into DeviceDisplay and is a single property KeepScreenOn
  • SensorSpeed: Normal is now Default for all sensors
  • TextToSpeech: SpeakSettings is now SpeechOptions

0.11.0-preview

  • GH-448 Fix exception in SecureStorage when backup is turned on for newer devices
  • GH-466 Add ToString overrides to help with debugging #531
  • GH-464 SecureStorage Optimizations on iOS for disposing objects #499
  • GH-523iOS Fix exception when info.Pist doesn't have key in AppInfo #525
  • GH-383 Support for multiple recipients when sending SMS #484
  • GH-492 Fix Android P string parsing of version number, now returns 9.0 #491
  • GH-260 Integrated sourcelink #260
  • GH-476 Geolocation updates to ensure geolocation is turned on #488
  • GH-464 Ensure Invariant Culture is used in text to speech api #483
  • GH-373 Ensure permission prompts happen on UI thread. #487
  • GH-474 All structs now implement IEquality #474

0.10.0-preview

  • GH-453 Fix OnScreenMetricsChanged from being called multiple times if no changes. #455

  • GH-440 iOS Maps only show if set to None for Navigation #444

  • GH-450 Browser now supports uri with port #452

  • Additional optimiations of all structs to implement IEquatable

Features

  • GH-348 Add Barometer Sensor API #459
  • Maps - Ability to do navigation on UWP/Android #444
  • Geolocation now has Course and Speed on Location #445

0.9.1-preview

  • GH-287 NEW Maps API to open maps to location or placemark #404
  • GH-250 NEW Launcher API - used to open generic URIs. #405
  • GH-366 iOS - now returns specific hw.machine for DeviceInfo.Model #395
  • GH-365 All - Use Generic EventHandler<T> for all event delegates #375
  • GH-367 All - Change naming of SensorSpeed.UI and BatterySource.AC #374
  • GH-337 Android - Added "Low Pass Filter" option on android compass by @Mrnikbobjeff #354
  • GH-388 Android - Provide better exception when Activity is null on Android due to Init not being called. #396

Issues Fixed

  • GH-343 iOS - Take VerticalAccuracy into consideration when returning iOS Altitude by @dotmorten #344
  • GH-380 Android - Fix issue with "valid handle" in secure storage#386
  • Fixed typo in ScreenMetricsChanagedEventArgs -> ScreenMetricsChangedEventArgs
  • GH-434 Android: Use unique identifier for each feature for preferences. Resets VersionTracking if used.
  • GH-419 UWP: Fixes for sensor stops. All: Sync sensor speeds.

0.8.0-preview

Issues Fixed

  • GH-306 Fix for Calculate Distance between two locations #307
  • GH-316 Secure Storage - Return null for key with no value #320
  • GH-317 Secure Storage - Fix to broaden accessible query from .6 to .7 #321
  • GH-309 Android - Optimizations to tracking activity state #323

0.7.0.17-preview

This release adds new APIs and additional enhancements.

  • GH-245 Add Orientation Sensor API.
  • GH-254 Build against Android 8.1 and depend on Support 27.X libraries. #279
  • GH-192 Add DateTime to Preferences API. #232
  • GH-281 Add API to allow setting heading calibration on iOS. Also default to false for compass. #282
  • GH-240 Add IsMainThread API to Platform and refactor code. #277

Issues Fixes

  • GH-229 - Email subject and body missing on iOS. #230
  • GH-236 Fix Dependencies on Android (Update SDK Extras) could cause install issues on older projects.
  • GH-246 - Fix up and document secure storage tests on iOS. #278 #247
  • GH-272 - Fix null exception on iOS Simulator for querying last known location. #276

0.6.0-preview