├── .editorconfig ├── .gitattributes ├── .github ├── ISSUE_TEMPLATE.md ├── ISSUE_TEMPLATE │ ├── bug-report.md │ ├── customer-feedback.yml │ ├── feature-request.md │ └── new-api-spec.md └── PULL_REQUEST_TEMPLATE.md ├── .gitignore ├── .openpublishing.build.ps1 ├── .openpublishing.publish.config.json ├── Assets ├── xamarin.essentials.icon.sketch └── xamarin.essentials_128x128.png ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── DeviceTests ├── DeviceTests.Android │ ├── Assets │ │ ├── AppBundleFile.txt │ │ ├── AppBundleFile_NoExtension │ │ └── Folder │ │ │ └── AppBundleFile_Nested.txt │ ├── DeviceTests.Android.csproj │ ├── MainActivity.cs │ ├── Properties │ │ ├── AndroidManifest.xml │ │ └── AssemblyInfo.cs │ ├── Resources │ │ ├── drawable-hdpi │ │ │ └── icon.png │ │ ├── drawable-xhdpi │ │ │ └── icon.png │ │ ├── drawable-xxhdpi │ │ │ └── icon.png │ │ ├── drawable │ │ │ └── icon.png │ │ ├── layout │ │ │ ├── Main.axml │ │ │ ├── Tabbar.axml │ │ │ └── Toolbar.axml │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ └── values │ │ │ ├── Strings.xml │ │ │ ├── ic_launcher_background.xml │ │ │ └── styles.xml │ ├── TestInstrumentation.cs │ └── Tests │ │ └── FileProvider_Tests.cs ├── DeviceTests.Shared │ ├── Accelerometer_Tests.cs │ ├── AppActions_Tests.cs │ ├── AssemblyInfo.cs │ ├── Barometer_Shared.cs │ ├── Battery_Tests.cs │ ├── Clipboard_Tests.cs │ ├── Color_Tests.cs │ ├── Compass_Tests.cs │ ├── Connectivity_Tests.cs │ ├── Contacts_Tests.cs │ ├── DeviceInfo_Tests.cs │ ├── DeviceTests.Shared.csproj │ ├── Email_Tests.cs │ ├── FileSystem_Tests.cs │ ├── Flashlight_Tests.cs │ ├── Geocoding_Tests.cs │ ├── Geolocation_Tests.cs │ ├── Gyroscope_Tests.cs │ ├── HapticFeedback_Tests.cs │ ├── HardwareSupport.cs │ ├── Launcher_Tests.cs │ ├── Magnetometer_Tests.cs │ ├── MainThread_Tests.cs │ ├── Maps_Tests.cs │ ├── Permissions_Tests.cs │ ├── PhoneDialer_Tests.cs │ ├── Point_Tests.cs │ ├── Preferences_Tests.cs │ ├── Rectangle_Tests.cs │ ├── SecureStorage_Tests.cs │ ├── Share_Tests.cs │ ├── Size_Tests.cs │ ├── Traits.cs │ ├── Utils.cs │ ├── VersionTracking_Tests.cs │ ├── Vibration_Tests.cs │ └── WebAuthenticator_Tests.cs ├── DeviceTests.UWP │ ├── App.xaml │ ├── App.xaml.cs │ ├── AppBundleFile.txt │ ├── AppBundleFile_NoExtension │ ├── Assets │ │ ├── LockScreenLogo.scale-100.png │ │ ├── LockScreenLogo.scale-125.png │ │ ├── LockScreenLogo.scale-150.png │ │ ├── LockScreenLogo.scale-200.png │ │ ├── LockScreenLogo.scale-400.png │ │ ├── SplashScreen.scale-100.png │ │ ├── SplashScreen.scale-125.png │ │ ├── SplashScreen.scale-150.png │ │ ├── SplashScreen.scale-200.png │ │ ├── SplashScreen.scale-400.png │ │ ├── Square150x150Logo.scale-100.png │ │ ├── Square150x150Logo.scale-125.png │ │ ├── Square150x150Logo.scale-150.png │ │ ├── Square150x150Logo.scale-200.png │ │ ├── Square150x150Logo.scale-400.png │ │ ├── Square44x44Logo.scale-100.png │ │ ├── Square44x44Logo.scale-125.png │ │ ├── Square44x44Logo.scale-150.png │ │ ├── Square44x44Logo.scale-200.png │ │ ├── Square44x44Logo.scale-400.png │ │ ├── Square44x44Logo.targetsize-16_altform-unplated.png │ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png │ │ ├── Square44x44Logo.targetsize-256_altform-unplated.png │ │ ├── Square44x44Logo.targetsize-32_altform-unplated.png │ │ ├── Square44x44Logo.targetsize-48_altform-unplated.png │ │ ├── StoreLogo.png │ │ ├── Wide310x150Logo.scale-100.png │ │ ├── Wide310x150Logo.scale-125.png │ │ ├── Wide310x150Logo.scale-150.png │ │ ├── Wide310x150Logo.scale-200.png │ │ └── Wide310x150Logo.scale-400.png │ ├── DeviceTests.UWP.csproj │ ├── Folder │ │ └── AppBundleFile_Nested.txt │ ├── Package.appxmanifest │ └── Properties │ │ ├── AssemblyInfo.cs │ │ └── Default.rd.xml ├── DeviceTests.iOS │ ├── AppDelegate.cs │ ├── DeviceTests.iOS.csproj │ ├── Entitlements.plist │ ├── GlobalSuppressions.cs │ ├── Info.plist │ ├── Main.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ ├── AppBundleFile.txt │ │ ├── AppBundleFile_NoExtension │ │ ├── Folder │ │ │ └── AppBundleFile_Nested.txt │ │ ├── Icon-60.png │ │ ├── Icon-60@2x.png │ │ ├── Icon-60@3x.png │ │ ├── Icon-76.png │ │ ├── Icon-76@2x.png │ │ ├── Icon-76@3x.png │ │ ├── Icon-Small-40.png │ │ ├── Icon-Small-40@2x.png │ │ ├── Icon-Small-40@3x.png │ │ ├── Icon-Small.png │ │ ├── Icon-Small@2x.png │ │ ├── Icon-Small@3x.png │ │ └── LaunchScreen.storyboard │ └── TestApplicationDelegate.cs └── build.cake ├── Directory.Build.props ├── LICENSE ├── LICENSE-CODE ├── NuGet.config ├── PRODUCT-FEEDBACK.md ├── README.md ├── SUBMITTING-ISSUES.md ├── Samples ├── Sample.Server.WebAuthenticator │ ├── Controllers │ │ └── MobileAuthController.cs │ ├── Program.cs │ ├── Sample.Server.WebAuthenticator.csproj │ ├── Startup.cs │ └── appsettings.json ├── Samples.Android │ ├── Assets │ │ └── FileSystemTemplate.txt │ ├── MainActivity.cs │ ├── Properties │ │ ├── AndroidManifest.xml │ │ └── AssemblyInfo.cs │ ├── Resources │ │ ├── drawable-hdpi │ │ │ ├── app_info_action_icon.png │ │ │ ├── battery_action_icon.png │ │ │ └── icon.png │ │ ├── drawable-xhdpi │ │ │ ├── app_info_action_icon.png │ │ │ ├── battery_action_icon.png │ │ │ └── icon.png │ │ ├── drawable-xxhdpi │ │ │ ├── app_info_action_icon.png │ │ │ ├── battery_action_icon.png │ │ │ └── icon.png │ │ ├── drawable │ │ │ ├── app_info_action_icon.png │ │ │ ├── battery_action_icon.png │ │ │ └── icon.png │ │ ├── layout │ │ │ ├── Main.axml │ │ │ ├── Tabbar.axml │ │ │ └── Toolbar.axml │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ ├── values │ │ │ ├── Strings.xml │ │ │ ├── ic_launcher_background.xml │ │ │ └── styles.xml │ │ └── xml │ │ │ └── my_backup_rules.xml │ ├── Samples.Android.csproj │ ├── appcenter-post-clone.sh │ └── proguard.cfg ├── Samples.Mac │ ├── AppDelegate.cs │ ├── Assets.xcassets │ │ ├── AppIcon.appiconset │ │ │ ├── AppIcon-128.png │ │ │ ├── AppIcon-128@2x.png │ │ │ ├── AppIcon-16.png │ │ │ ├── AppIcon-16@2x.png │ │ │ ├── AppIcon-256.png │ │ │ ├── AppIcon-256@2x.png │ │ │ ├── AppIcon-32.png │ │ │ ├── AppIcon-32@2x.png │ │ │ ├── AppIcon-512.png │ │ │ ├── AppIcon-512@2x.png │ │ │ └── Contents.json │ │ └── Contents.json │ ├── Entitlements.plist │ ├── Info.plist │ ├── Main.cs │ ├── Main.storyboard │ ├── Resources │ │ └── FileSystemTemplate.txt │ └── Samples.Mac.csproj ├── Samples.Tizen │ ├── CustomViewCellRenderer.cs │ ├── Program.cs │ ├── Samples.Tizen.csproj │ ├── res │ │ └── FileSystemTemplate.txt │ ├── shared │ │ └── res │ │ │ └── Samples.Tizen.png │ └── tizen-manifest.xml ├── Samples.UWP │ ├── App.xaml │ ├── App.xaml.cs │ ├── Assets │ │ ├── LockScreenLogo.scale-100.png │ │ ├── LockScreenLogo.scale-125.png │ │ ├── LockScreenLogo.scale-150.png │ │ ├── LockScreenLogo.scale-200.png │ │ ├── LockScreenLogo.scale-400.png │ │ ├── SplashScreen.scale-100.png │ │ ├── SplashScreen.scale-125.png │ │ ├── SplashScreen.scale-150.png │ │ ├── SplashScreen.scale-200.png │ │ ├── SplashScreen.scale-400.png │ │ ├── Square150x150Logo.scale-100.png │ │ ├── Square150x150Logo.scale-125.png │ │ ├── Square150x150Logo.scale-150.png │ │ ├── Square150x150Logo.scale-200.png │ │ ├── Square150x150Logo.scale-400.png │ │ ├── Square44x44Logo.scale-100.png │ │ ├── Square44x44Logo.scale-125.png │ │ ├── Square44x44Logo.scale-150.png │ │ ├── Square44x44Logo.scale-200.png │ │ ├── Square44x44Logo.scale-400.png │ │ ├── Square44x44Logo.targetsize-16_altform-unplated.png │ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png │ │ ├── Square44x44Logo.targetsize-256_altform-unplated.png │ │ ├── Square44x44Logo.targetsize-32_altform-unplated.png │ │ ├── Square44x44Logo.targetsize-48_altform-unplated.png │ │ ├── StoreLogo.png │ │ ├── Wide310x150Logo.scale-100.png │ │ ├── Wide310x150Logo.scale-125.png │ │ ├── Wide310x150Logo.scale-150.png │ │ ├── Wide310x150Logo.scale-200.png │ │ ├── Wide310x150Logo.scale-400.png │ │ ├── app_info_action_icon.png │ │ └── battery_action_icon.png │ ├── FileSystemTemplate.txt │ ├── MainPage.xaml │ ├── MainPage.xaml.cs │ ├── Package.appxmanifest │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ └── Default.rd.xml │ └── Samples.UWP.csproj ├── Samples.iOS │ ├── AppDelegate.cs │ ├── Assets.xcassets │ │ ├── AppIcon.appiconset │ │ │ ├── Contents.json │ │ │ ├── Icon-1024.png │ │ │ ├── Icon-167.png │ │ │ ├── Icon-60.png │ │ │ ├── Icon-60@2x.png │ │ │ ├── Icon-60@3x.png │ │ │ ├── Icon-76.png │ │ │ ├── Icon-76@2x.png │ │ │ ├── Icon-Small-40.png │ │ │ ├── Icon-Small-40@2x.png │ │ │ ├── Icon-Small-40@3x.png │ │ │ ├── Icon-Small.png │ │ │ ├── Icon-Small@2x.png │ │ │ └── Icon-Small@3x.png │ │ ├── app_info_action_icon.imageset │ │ │ ├── Contents.json │ │ │ ├── app_info_action_icon.png │ │ │ ├── app_info_action_icon@2x.png │ │ │ └── app_info_action_icon@3x.png │ │ └── battery_action_icon.imageset │ │ │ ├── Contents.json │ │ │ ├── battery_action_icon.png │ │ │ ├── battery_action_icon@2x.png │ │ │ └── battery_action_icon@3x.png │ ├── Entitlements.plist │ ├── GlobalSuppressions.cs │ ├── Info.plist │ ├── Main.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ ├── FileSystemTemplate.txt │ │ ├── LaunchScreen.storyboard │ │ ├── app_info_action_icon@2x.png │ │ └── battery_action_icon@2x.png │ └── Samples.iOS.csproj └── Samples │ ├── App.xaml │ ├── App.xaml.cs │ ├── Converters │ └── NegativeConverter.cs │ ├── Helpers │ ├── CommonConstants.cs │ └── ViewHelpers.cs │ ├── Model │ ├── PermissionItem.cs │ └── SampleItem.cs │ ├── Samples.csproj │ ├── View │ ├── AccelerometerPage.xaml │ ├── AccelerometerPage.xaml.cs │ ├── AllSensorsPage.xaml │ ├── AllSensorsPage.xaml.cs │ ├── AppInfoPage.xaml │ ├── AppInfoPage.xaml.cs │ ├── BarometerPage.xaml │ ├── BarometerPage.xaml.cs │ ├── BasePage.cs │ ├── BatteryPage.xaml │ ├── BatteryPage.xaml.cs │ ├── BrowserPage.xaml │ ├── BrowserPage.xaml.cs │ ├── ClipboardPage.xaml │ ├── ClipboardPage.xaml.cs │ ├── ColorConvertersPage.xaml │ ├── ColorConvertersPage.xaml.cs │ ├── CompassPage.xaml │ ├── CompassPage.xaml.cs │ ├── ConnectivityPage.xaml │ ├── ConnectivityPage.xaml.cs │ ├── ContactDetailsPage.xaml │ ├── ContactDetailsPage.xaml.cs │ ├── ContactsPage.xaml │ ├── ContactsPage.xaml.cs │ ├── DeviceInfoPage.xaml │ ├── DeviceInfoPage.xaml.cs │ ├── EmailPage.xaml │ ├── EmailPage.xaml.cs │ ├── FilePickerPage.xaml │ ├── FilePickerPage.xaml.cs │ ├── FileSystemPage.xaml │ ├── FileSystemPage.xaml.cs │ ├── FlashlightPage.xaml │ ├── FlashlightPage.xaml.cs │ ├── GeocodingPage.xaml │ ├── GeocodingPage.xaml.cs │ ├── GeolocationPage.xaml │ ├── GeolocationPage.xaml.cs │ ├── GyroscopePage.xaml │ ├── GyroscopePage.xaml.cs │ ├── HapticFeedbackPage.xaml │ ├── HapticFeedbackPage.xaml.cs │ ├── HomePage.xaml │ ├── HomePage.xaml.cs │ ├── KeepScreenOnPage.xaml │ ├── KeepScreenOnPage.xaml.cs │ ├── LauncherPage.xaml │ ├── LauncherPage.xaml.cs │ ├── MagnetometerPage.xaml │ ├── MagnetometerPage.xaml.cs │ ├── MapsPage.xaml │ ├── MapsPage.xaml.cs │ ├── MediaPickerPage.xaml │ ├── MediaPickerPage.xaml.cs │ ├── OrientationSensorPage.xaml │ ├── OrientationSensorPage.xaml.cs │ ├── PermissionsPage.xaml │ ├── PermissionsPage.xaml.cs │ ├── PhoneDialerPage.xaml │ ├── PhoneDialerPage.xaml.cs │ ├── PreferencesPage.xaml │ ├── PreferencesPage.xaml.cs │ ├── SMSPage.xaml │ ├── SMSPage.xaml.cs │ ├── ScreenshotPage.xaml │ ├── ScreenshotPage.xaml.cs │ ├── SecureStoragePage.xaml │ ├── SecureStoragePage.xaml.cs │ ├── SharePage.xaml │ ├── SharePage.xaml.cs │ ├── TextToSpeechPage.xaml │ ├── TextToSpeechPage.xaml.cs │ ├── UnitConvertersPage.xaml │ ├── UnitConvertersPage.xaml.cs │ ├── VibrationPage.xaml │ ├── VibrationPage.xaml.cs │ ├── WebAuthenticatorPage.xaml │ └── WebAuthenticatorPage.xaml.cs │ └── ViewModel │ ├── AccelerometerViewModel.cs │ ├── AppInfoViewModel.cs │ ├── BarometerViewModel.cs │ ├── BaseViewModel.cs │ ├── BatteryViewModel.cs │ ├── BrowserViewModel.cs │ ├── ClipboardViewModel.cs │ ├── ColorConvertersViewModel.cs │ ├── CompassViewModel.cs │ ├── ConnectivityViewModel.cs │ ├── ContactDetailsViewModel.cs │ ├── ContactsViewModel.cs │ ├── DeviceInfoViewModel.cs │ ├── EmailViewModel.cs │ ├── FilePickerViewModel.cs │ ├── FileSystemViewModel.cs │ ├── FlashlightViewModel.cs │ ├── GeocodingViewModel.cs │ ├── GeolocationViewModel.cs │ ├── GyroscopeViewModel.cs │ ├── HapticFeedbackViewModel.cs │ ├── HomeViewModel.cs │ ├── KeepScreenOnViewModel.cs │ ├── LauncherViewModel.cs │ ├── MagnetometerViewModel.cs │ ├── MapsViewModel.cs │ ├── MediaPickerViewModel.cs │ ├── ObservableObject.cs │ ├── OrientationSensorViewModel.cs │ ├── PermissionsViewModel.cs │ ├── PhoneDialerViewModel.cs │ ├── PreferencesViewModel.cs │ ├── ScreenshotViewModel.cs │ ├── SecureStorageViewModel.cs │ ├── ShareViewModel.cs │ ├── SmsViewModel.cs │ ├── TextToSpeechViewModel.cs │ ├── UnitConvertersViewModel.cs │ ├── VibrationViewModel.cs │ └── WebAuthenticatorViewModel.cs ├── SignList.xml ├── Tests ├── Accelerometer_Tests.cs ├── AppActions_Tests.cs ├── Barometer_Tests.cs ├── Battery_Tests.cs ├── Browser_Tests.cs ├── Clipboard_Tests.cs ├── Color_Tests.cs ├── Compass_Tests.cs ├── Connectivity_Tests.cs ├── Contacts_Tests.cs ├── DeviceDisplay_Tests.cs ├── Email_Tests.cs ├── FilePicker_Tests.cs ├── FileSystem_Tests.cs ├── Geocoding_Tests.cs ├── Gyroscope_Tests.cs ├── Launcher_Tests.cs ├── Magnetometer_Tests.cs ├── Maps_Tests.cs ├── OrientationSensor_Tests.cs ├── PhoneDialer_Tests.cs ├── Preferences_Tests.cs ├── SecureStorage_Tests.cs ├── Share_Tests.cs ├── Sms_Tests.cs ├── Tests.csproj ├── TextToSpeech_Tests.cs ├── UnitConverters_Tests.cs ├── Utils.cs └── Utils_Tests.cs ├── ThirdPartyNotices ├── Xamarin.Essentials.ruleset ├── Xamarin.Essentials.sln ├── Xamarin.Essentials ├── Accelerometer │ ├── Accelerometer.android.cs │ ├── Accelerometer.ios.watchos.cs │ ├── Accelerometer.netstandard.tvos.macos.cs │ ├── Accelerometer.shared.cs │ ├── Accelerometer.tizen.cs │ ├── Accelerometer.uwp.cs │ └── AccelerometerQueue.shared.cs ├── AppActions │ ├── AppActions.android.cs │ ├── AppActions.ios.cs │ ├── AppActions.netstandard.tvos.watchos.macos.tizen.cs │ ├── AppActions.shared.cs │ └── AppActions.uwp.cs ├── AppInfo │ ├── AppInfo.android.cs │ ├── AppInfo.ios.tvos.watchos.macos.cs │ ├── AppInfo.netstandard.cs │ ├── AppInfo.shared.cs │ ├── AppInfo.tizen.cs │ ├── AppInfo.uwp.cs │ └── AppTheme.shared.cs ├── AssemblyInfo │ ├── AssemblyInfo.android.cs │ ├── AssemblyInfo.ios.tvos.watchos.macos.cs │ └── AssemblyInfo.shared.cs ├── Barometer │ ├── Barometer.android.cs │ ├── Barometer.ios.watchos.cs │ ├── Barometer.netstandard.tvos.macos.cs │ ├── Barometer.shared.cs │ ├── Barometer.tizen.cs │ └── Barometer.uwp.cs ├── Battery │ ├── Battery.android.cs │ ├── Battery.ios.watchos.cs │ ├── Battery.macos.cs │ ├── Battery.netstandard.tvos.cs │ ├── Battery.shared.cs │ ├── Battery.tizen.cs │ └── Battery.uwp.cs ├── Browser │ ├── Browser.android.cs │ ├── Browser.ios.cs │ ├── Browser.macos.cs │ ├── Browser.netstandard.tvos.watchos.cs │ ├── Browser.shared.cs │ ├── Browser.tizen.cs │ ├── Browser.uwp.cs │ ├── BrowserLaunchMode.shared.cs │ ├── BrowserLaunchOptions.shared.cs │ └── BrowserTitleMode.shared.cs ├── Clipboard │ ├── Clipboard.android.cs │ ├── Clipboard.ios.cs │ ├── Clipboard.macos.cs │ ├── Clipboard.netstandard.tvos.watchos.tizen.cs │ ├── Clipboard.shared.cs │ └── Clipboard.uwp.cs ├── Compass │ ├── Compass.android.cs │ ├── Compass.ios.cs │ ├── Compass.netstandard.tvos.watchos.macos.cs │ ├── Compass.shared.cs │ ├── Compass.tizen.cs │ ├── Compass.uwp.cs │ └── LowPassFilter.shared.cs ├── Connectivity │ ├── Connectivity.android.cs │ ├── Connectivity.ios.tvos.macos.cs │ ├── Connectivity.ios.tvos.macos.reachability.cs │ ├── Connectivity.netstandard.watchos.cs │ ├── Connectivity.shared.cs │ ├── Connectivity.shared.enums.cs │ ├── Connectivity.tizen.cs │ └── Connectivity.uwp.cs ├── Contacts │ ├── Contacts.android.cs │ ├── Contacts.ios.macos.cs │ ├── Contacts.netstandard.tvos.watchos.cs │ ├── Contacts.shared.cs │ ├── Contacts.tizen.cs │ └── Contacts.uwp.cs ├── DeviceDisplay │ ├── DeviceDisplay.android.cs │ ├── DeviceDisplay.ios.cs │ ├── DeviceDisplay.macos.cs │ ├── DeviceDisplay.netstandard.tvos.watchos.cs │ ├── DeviceDisplay.shared.cs │ ├── DeviceDisplay.tizen.cs │ └── DeviceDisplay.uwp.cs ├── DeviceInfo │ ├── DeviceInfo.android.cs │ ├── DeviceInfo.ios.tvos.watchos.cs │ ├── DeviceInfo.macos.cs │ ├── DeviceInfo.netstandard.cs │ ├── DeviceInfo.shared.cs │ ├── DeviceInfo.tizen.cs │ └── DeviceInfo.uwp.cs ├── Email │ ├── Email.android.cs │ ├── Email.ios.cs │ ├── Email.macos.cs │ ├── Email.netstandard.tvos.watchos.cs │ ├── Email.shared.cs │ ├── Email.tizen.cs │ └── Email.uwp.cs ├── FilePicker │ ├── FilePicker.android.cs │ ├── FilePicker.ios.cs │ ├── FilePicker.macos.cs │ ├── FilePicker.netstandard.watchos.tvos.cs │ ├── FilePicker.shared.cs │ ├── FilePicker.tizen.cs │ └── FilePicker.uwp.cs ├── FileSystem │ ├── FileSystem.android.cs │ ├── FileSystem.ios.cs │ ├── FileSystem.ios.tvos.watchos.macos.cs │ ├── FileSystem.netstandard.cs │ ├── FileSystem.shared.cs │ ├── FileSystem.tizen.cs │ └── FileSystem.uwp.cs ├── Flashlight │ ├── Flashlight.android.cs │ ├── Flashlight.ios.cs │ ├── Flashlight.netstandard.tvos.watchos.macos.cs │ ├── Flashlight.shared.cs │ ├── Flashlight.tizen.cs │ └── Flashlight.uwp.cs ├── Geocoding │ ├── Geocoding.android.cs │ ├── Geocoding.ios.tvos.watchos.macos.cs │ ├── Geocoding.netstandard.cs │ ├── Geocoding.shared.cs │ ├── Geocoding.tizen.cs │ └── Geocoding.uwp.cs ├── Geolocation │ ├── Geolocation.android.cs │ ├── Geolocation.ios.macos.cs │ ├── Geolocation.netstandard.tvos.watchos.cs │ ├── Geolocation.shared.cs │ ├── Geolocation.tizen.cs │ ├── Geolocation.uwp.cs │ ├── GeolocationRequest.ios.macos.cs │ ├── GeolocationRequest.shared.cs │ └── GeolocationRequest.uwp.cs ├── GlobalSuppressions.shared.cs ├── Gyroscope │ ├── Gyroscope.android.cs │ ├── Gyroscope.ios.watchos.cs │ ├── Gyroscope.netstandard.tvos.macos.cs │ ├── Gyroscope.shared.cs │ ├── Gyroscope.tizen.cs │ └── Gyroscope.uwp.cs ├── HapticFeedback │ ├── HapticFeedback.android.cs │ ├── HapticFeedback.ios.cs │ ├── HapticFeedback.macos.cs │ ├── HapticFeedback.netstandard.tvos.watchos.cs │ ├── HapticFeedback.shared.cs │ ├── HapticFeedback.tizen.cs │ ├── HapticFeedback.uwp.cs │ └── HapticFeedbackType.shared.cs ├── Launcher │ ├── Launcher.android.cs │ ├── Launcher.ios.tvos.cs │ ├── Launcher.macos.cs │ ├── Launcher.netstandard.watchos.cs │ ├── Launcher.shared.cs │ ├── Launcher.tizen.cs │ └── Launcher.uwp.cs ├── Magnetometer │ ├── Magnetometer.android.cs │ ├── Magnetometer.ios.watchos.cs │ ├── Magnetometer.netstandard.tvos.macos.cs │ ├── Magnetometer.shared.cs │ ├── Magnetometer.tizen.cs │ └── Magnetometer.uwp.cs ├── MainThread │ ├── MainThread.android.cs │ ├── MainThread.ios.tvos.watchos.macos.cs │ ├── MainThread.netstandard.cs │ ├── MainThread.shared.cs │ ├── MainThread.tizen.cs │ ├── MainThread.uwp.cs │ └── MainThreadExtensions.uwp.cs ├── Map │ ├── Map.android.cs │ ├── Map.ios.watchos.macos.cs │ ├── Map.netstandard.tvos.cs │ ├── Map.shared.cs │ ├── Map.tizen.cs │ ├── Map.uwp.cs │ ├── MapLaunchOptions.shared.cs │ └── NavigationMode.shared.cs ├── MediaPicker │ ├── MediaPicker.android.cs │ ├── MediaPicker.ios.cs │ ├── MediaPicker.macos.cs │ ├── MediaPicker.netstandard.watchos.tvos.cs │ ├── MediaPicker.shared.cs │ ├── MediaPicker.tizen.cs │ └── MediaPicker.uwp.cs ├── OrientationSensor │ ├── OrientationSensor.android.cs │ ├── OrientationSensor.ios.watchos.cs │ ├── OrientationSensor.netstandard.tvos.macos.cs │ ├── OrientationSensor.shared.cs │ ├── OrientationSensor.tizen.cs │ └── OrientationSensor.uwp.cs ├── Permissions │ ├── Permissions.android.cs │ ├── Permissions.ios.cs │ ├── Permissions.ios.tvos.cs │ ├── Permissions.ios.tvos.watchos.cs │ ├── Permissions.ios.watchos.cs │ ├── Permissions.macos.cs │ ├── Permissions.netstandard.cs │ ├── Permissions.shared.cs │ ├── Permissions.shared.enums.cs │ ├── Permissions.tizen.cs │ └── Permissions.uwp.cs ├── PhoneDialer │ ├── PhoneDialer.android.cs │ ├── PhoneDialer.ios.cs │ ├── PhoneDialer.macos.cs │ ├── PhoneDialer.netstandard.tvos.watchos.cs │ ├── PhoneDialer.shared.cs │ ├── PhoneDialer.tizen.cs │ └── PhoneDialer.uwp.cs ├── Platform │ ├── Platform.android.cs │ ├── Platform.ios.tvos.watchos.cs │ ├── Platform.macos.cs │ ├── Platform.shared.cs │ ├── Platform.tizen.cs │ └── Platform.uwp.cs ├── Preferences │ ├── Preferences.android.cs │ ├── Preferences.ios.tvos.watchos.macos.cs │ ├── Preferences.netstandard.cs │ ├── Preferences.shared.cs │ ├── Preferences.tizen.cs │ └── Preferences.uwp.cs ├── Resources │ └── xml │ │ └── xamarin_essentials_fileprovider_file_paths.xml ├── Screenshot │ ├── Screenshot.android.cs │ ├── Screenshot.ios.tvos.cs │ ├── Screenshot.netstandard.tizen.watchos.macos.cs │ ├── Screenshot.shared.cs │ └── Screenshot.uwp.cs ├── SecureStorage │ ├── SecureStorage.android.cs │ ├── SecureStorage.ios.tvos.watchos.macos.cs │ ├── SecureStorage.netstandard.cs │ ├── SecureStorage.shared.cs │ ├── SecureStorage.tizen.cs │ └── SecureStorage.uwp.cs ├── Share │ ├── Share.android.cs │ ├── Share.ios.cs │ ├── Share.macos.cs │ ├── Share.netstandard.tvos.watchos.cs │ ├── Share.shared.cs │ ├── Share.tizen.cs │ └── Share.uwp.cs ├── Sms │ ├── Sms.android.cs │ ├── Sms.ios.cs │ ├── Sms.macos.cs │ ├── Sms.netstandard.tvos.watchos.cs │ ├── Sms.shared.cs │ ├── Sms.tizen.cs │ └── Sms.uwp.cs ├── TextToSpeech │ ├── TextToSpeech.android.cs │ ├── TextToSpeech.ios.tvos.watchos.cs │ ├── TextToSpeech.macos.cs │ ├── TextToSpeech.netstandard.cs │ ├── TextToSpeech.shared.cs │ ├── TextToSpeech.tizen.cs │ ├── TextToSpeech.uwp.cs │ └── TextToSpeechExtensions.shared.cs ├── Types │ ├── ColorConverters.shared.cs │ ├── Contact.shared.cs │ ├── DeviceIdiom.shared.cs │ ├── DevicePlatform.shared.cs │ ├── DisplayInfo.shared.cs │ ├── DisplayOrientation.shared.cs │ ├── DisplayRotation.shared.cs │ ├── ExperimentalFeatures.shared.cs │ ├── FileProvider.android.cs │ ├── Location.shared.cs │ ├── LocationExtensions.android.cs │ ├── LocationExtensions.ios.tvos.watchos.macos.cs │ ├── LocationExtensions.shared.cs │ ├── LocationExtensions.uwp.cs │ ├── Placemark.shared.cs │ ├── PlacemarkExtensions.android.cs │ ├── PlacemarkExtensions.ios.tvos.watchos.macos.cs │ ├── PlacemarkExtensions.shared.cs │ ├── PlacemarkExtensions.uwp.cs │ ├── PlatformExtensions │ │ ├── ColorExtensions.android.cs │ │ ├── ColorExtensions.ios.tvos.watchos.cs │ │ ├── ColorExtensions.macos.cs │ │ ├── ColorExtensions.shared.cs │ │ ├── ColorExtensions.tizen.cs │ │ ├── ColorExtensions.uwp.cs │ │ ├── PointExtensions.android.cs │ │ ├── PointExtensions.ios.tvos.watchos.macos.cs │ │ ├── PointExtensions.tizen.cs │ │ ├── PointExtensions.uwp.cs │ │ ├── RectangleExtensions.android.cs │ │ ├── RectangleExtensions.ios.tvos.watchos.macos.cs │ │ ├── RectangleExtensions.tizen.cs │ │ ├── RectangleExtensions.uwp.cs │ │ ├── SizeExtensions.android.cs │ │ ├── SizeExtensions.ios.macos.cs │ │ ├── SizeExtensions.tizen.cs │ │ └── SizeExtensions.uwp.cs │ ├── SensorSpeed.android.cs │ ├── SensorSpeed.ios.tvos.watchos.cs │ ├── SensorSpeed.shared.cs │ ├── SensorSpeed.tizen.cs │ ├── SensorSpeed.uwp.cs │ ├── Shared │ │ ├── Exceptions.shared.cs │ │ ├── PreserveAttribute.shared.cs │ │ ├── Utils.shared.cs │ │ └── WebUtils.shared.cs │ └── UnitConverters.shared.cs ├── VersionTracking │ └── VersionTracking.shared.cs ├── Vibration │ ├── Vibration.android.cs │ ├── Vibration.ios.cs │ ├── Vibration.netstandard.tvos.watchos.macos.cs │ ├── Vibration.shared.cs │ ├── Vibration.tizen.cs │ └── Vibration.uwp.cs ├── WebAuthenticator │ ├── AppleSignInAuthenticator.ios.cs │ ├── AppleSignInAuthenticator.netstandard.android.tvos.watchos.uwp.tizen.macos.cs │ ├── AppleSignInAuthenticator.shared.cs │ ├── WebAuthenticator.android.cs │ ├── WebAuthenticator.ios.tvos.cs │ ├── WebAuthenticator.macos.cs │ ├── WebAuthenticator.netstandard.watchos.tizen.cs │ ├── WebAuthenticator.shared.cs │ ├── WebAuthenticator.uwp.cs │ ├── WebAuthenticatorCallbackActivity.android.cs │ ├── WebAuthenticatorIntermediateActivity.android.cs │ └── WebAuthenticatorResult.shared.cs ├── Xamarin.Essentials.csproj └── mdoc.targets ├── android-setup.ps1 ├── appcenter-post-clone.sh ├── azure-pipelines.yml ├── build-tools └── automation │ └── guardian │ ├── CredScanSuppressions.json │ ├── source.gdnsuppress │ └── tsaoptions-v2.json ├── build.cake ├── docs ├── .gitattributes ├── en │ ├── FrameworksIndex │ │ ├── xamarin-essentials-android.xml │ │ ├── xamarin-essentials-ios.xml │ │ ├── xamarin-essentials-macos.xml │ │ ├── xamarin-essentials-tvos.xml │ │ ├── xamarin-essentials-uwp.xml │ │ ├── xamarin-essentials-watchos.xml │ │ └── xamarin-essentials.xml │ ├── Xamarin.Essentials │ │ ├── Accelerometer.xml │ │ ├── AccelerometerChangedEventArgs.xml │ │ ├── AccelerometerData.xml │ │ ├── ActivityState.xml │ │ ├── ActivityStateChangedEventArgs.xml │ │ ├── AltitudeReferenceSystem.xml │ │ ├── AppAction.xml │ │ ├── AppActionEventArgs.xml │ │ ├── AppActions.xml │ │ ├── AppInfo.xml │ │ ├── AppTheme.xml │ │ ├── AppleSignInAuthenticator+Options.xml │ │ ├── AppleSignInAuthenticator.xml │ │ ├── Barometer.xml │ │ ├── BarometerChangedEventArgs.xml │ │ ├── BarometerData.xml │ │ ├── Battery.xml │ │ ├── BatteryInfoChangedEventArgs.xml │ │ ├── BatteryPowerSource.xml │ │ ├── BatteryState.xml │ │ ├── Browser.xml │ │ ├── BrowserLaunchFlags.xml │ │ ├── BrowserLaunchMode.xml │ │ ├── BrowserLaunchOptions.xml │ │ ├── BrowserTitleMode.xml │ │ ├── Clipboard.xml │ │ ├── ColorConverters.xml │ │ ├── ColorExtensions.xml │ │ ├── Compass.xml │ │ ├── CompassChangedEventArgs.xml │ │ ├── CompassData.xml │ │ ├── ConnectionProfile.xml │ │ ├── Connectivity.xml │ │ ├── ConnectivityChangedEventArgs.xml │ │ ├── Contact.xml │ │ ├── ContactEmail.xml │ │ ├── ContactPhone.xml │ │ ├── Contacts.xml │ │ ├── DeviceDisplay.xml │ │ ├── DeviceIdiom.xml │ │ ├── DeviceInfo.xml │ │ ├── DevicePlatform.xml │ │ ├── DeviceType.xml │ │ ├── DisplayInfo.xml │ │ ├── DisplayInfoChangedEventArgs.xml │ │ ├── DisplayOrientation.xml │ │ ├── DisplayRotation.xml │ │ ├── DistanceUnits.xml │ │ ├── Email.xml │ │ ├── EmailAttachment.xml │ │ ├── EmailBodyFormat.xml │ │ ├── EmailMessage.xml │ │ ├── EnergySaverStatus.xml │ │ ├── EnergySaverStatusChangedEventArgs.xml │ │ ├── ExperimentalFeatures.xml │ │ ├── FeatureNotEnabledException.xml │ │ ├── FeatureNotSupportedException.xml │ │ ├── FileBase.xml │ │ ├── FilePicker.xml │ │ ├── FilePickerFileType.xml │ │ ├── FileProvider.xml │ │ ├── FileProviderLocation.xml │ │ ├── FileResult.xml │ │ ├── FileSystem.xml │ │ ├── Flashlight.xml │ │ ├── Geocoding.xml │ │ ├── Geolocation.xml │ │ ├── GeolocationAccuracy.xml │ │ ├── GeolocationRequest.xml │ │ ├── Gyroscope.xml │ │ ├── GyroscopeChangedEventArgs.xml │ │ ├── GyroscopeData.xml │ │ ├── HapticFeedback.xml │ │ ├── HapticFeedbackType.xml │ │ ├── Launcher.xml │ │ ├── Locale.xml │ │ ├── Location.xml │ │ ├── LocationExtensions.xml │ │ ├── Magnetometer.xml │ │ ├── MagnetometerChangedEventArgs.xml │ │ ├── MagnetometerData.xml │ │ ├── MainThread.xml │ │ ├── Map.xml │ │ ├── MapLaunchOptions.xml │ │ ├── MediaPicker.xml │ │ ├── MediaPickerOptions.xml │ │ ├── NavigationMode.xml │ │ ├── NetworkAccess.xml │ │ ├── NotImplementedInReferenceAssemblyException.xml │ │ ├── OpenFileRequest.xml │ │ ├── OrientationSensor.xml │ │ ├── OrientationSensorChangedEventArgs.xml │ │ ├── OrientationSensorData.xml │ │ ├── PermissionException.xml │ │ ├── PermissionStatus.xml │ │ ├── Permissions+BasePermission.xml │ │ ├── Permissions+BasePlatformPermission.xml │ │ ├── Permissions+Battery.xml │ │ ├── Permissions+CalendarRead.xml │ │ ├── Permissions+CalendarWrite.xml │ │ ├── Permissions+Camera.xml │ │ ├── Permissions+ContactsRead.xml │ │ ├── Permissions+ContactsWrite.xml │ │ ├── Permissions+EventPermissions.xml │ │ ├── Permissions+Flashlight.xml │ │ ├── Permissions+LaunchApp.xml │ │ ├── Permissions+LocationAlways.xml │ │ ├── Permissions+LocationWhenInUse.xml │ │ ├── Permissions+Maps.xml │ │ ├── Permissions+Media.xml │ │ ├── Permissions+Microphone.xml │ │ ├── Permissions+NetworkState.xml │ │ ├── Permissions+Phone.xml │ │ ├── Permissions+Photos.xml │ │ ├── Permissions+Reminders.xml │ │ ├── Permissions+Sensors.xml │ │ ├── Permissions+Sms.xml │ │ ├── Permissions+Speech.xml │ │ ├── Permissions+StorageRead.xml │ │ ├── Permissions+StorageWrite.xml │ │ ├── Permissions+Vibrate.xml │ │ ├── Permissions.xml │ │ ├── PhoneDialer.xml │ │ ├── PickOptions.xml │ │ ├── Placemark.xml │ │ ├── PlacemarkExtensions.xml │ │ ├── Platform+Intent.xml │ │ ├── Platform.xml │ │ ├── PointExtensions.xml │ │ ├── Preferences.xml │ │ ├── ReadOnlyFile.xml │ │ ├── RectangleExtensions.xml │ │ ├── Screenshot.xml │ │ ├── ScreenshotFormat.xml │ │ ├── ScreenshotResult.xml │ │ ├── SecureStorage.xml │ │ ├── SensorSpeed.xml │ │ ├── Share.xml │ │ ├── ShareFile.xml │ │ ├── ShareFileRequest.xml │ │ ├── ShareMultipleFilesRequest.xml │ │ ├── ShareRequestBase.xml │ │ ├── ShareTextRequest.xml │ │ ├── SizeExtensions.xml │ │ ├── Sms.xml │ │ ├── SmsMessage.xml │ │ ├── SpeechOptions.xml │ │ ├── TextToSpeech.xml │ │ ├── UnitConverters.xml │ │ ├── VersionTracking.xml │ │ ├── Vibration.xml │ │ ├── WebAuthenticator.xml │ │ ├── WebAuthenticatorCallbackActivity.xml │ │ └── WebAuthenticatorResult.xml │ ├── breadcrumb │ │ └── toc.yml │ ├── docfx.json │ ├── index.xml │ ├── ns-Xamarin.Essentials.xml │ └── xml │ │ └── _filter.xml └── frameworks.xml ├── nugetreadme.txt └── stylecop.json /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | Bug report best practices: [Submitting Issues](https://github.com/xamarin/Essentials/blob/main/SUBMITTING-ISSUES.md) 2 | 3 | ### Description 4 | 5 | ### Steps to Reproduce 6 | 7 | 1. 8 | 2. 9 | 3. 10 | 11 | ### Expected Behavior 12 | 13 | ### Actual Behavior 14 | 15 | ### Basic Information 16 | 17 | - Version with issue: 18 | - Last known good version: 19 | - IDE: 20 | - Platform Target Frameworks: 21 | - iOS: 22 | - Android: 23 | - UWP: 24 | - Android Support Library Version: 25 | - Nuget Packages: 26 | - Affected Devices: 27 | 28 | ### Screenshots 29 | 30 | 31 | 32 | ### Reproduction Link 33 | 34 | 35 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature-request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for Essentials 4 | title: "[Enhancement] YOUR IDEA!" 5 | labels: feature-request 6 | assignees: '' 7 | 8 | --- 9 | We are no longer accepting new feature request for Xamarin.Essentials. Please make your new feature requests in the .NET MAUI repo which contains .NET MAUI Essentials at https://github.com/dotnet/maui. 10 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/new-api-spec.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: New API Spec 3 | about: An official specification for new APIS 4 | title: "[Spec] " 5 | labels: "feature-request" 6 | assignees: '' 7 | 8 | --- 9 | 10 | # [The feature] 11 | 12 | Provide a concise description of the feature and the motivation for adding it to Xamarin.Essentials 13 | 14 | # API 15 | 16 | ## [ class ] 17 | 18 | ### Properties 19 | 20 | | API | Description | 21 | | ------------- | ------------- | 22 | | [name] | Gets or sets [description]. | 23 | 24 | ### Events 25 | 26 | | API | Description | 27 | | ------------- | ------------- | 28 | | [name] | [API documentation/description] | 29 | 30 | # Scenarios 31 | 32 | # Platform Compatibility 33 | - Target Frameworks: 34 | - iOS: 35 | - Android: 36 | - UWP: 37 | # Backward Compatibility 38 | 39 | # Difficulty : [low/medium/high] -------------------------------------------------------------------------------- /.openpublishing.build.ps1: -------------------------------------------------------------------------------- 1 | param( 2 | [string]$buildCorePowershellUrl = "https://opbuildstorageprod.blob.core.windows.net/opps1container/.openpublishing.buildcore.ps1", 3 | [string]$parameters 4 | ) 5 | # Main 6 | $errorActionPreference = 'Stop' 7 | 8 | # Step-1: Download buildcore script to local 9 | echo "download build core script to local with source url: $buildCorePowershellUrl" 10 | $repositoryRoot = Split-Path -Parent $MyInvocation.MyCommand.Definition 11 | $buildCorePowershellDestination = "$repositoryRoot\.openpublishing.buildcore.ps1" 12 | Invoke-WebRequest $buildCorePowershellUrl -OutFile "$buildCorePowershellDestination" 13 | 14 | # Step-2: Run build core 15 | echo "run build core script with parameters: $parameters" 16 | & "$buildCorePowershellDestination" "$parameters" 17 | exit $LASTEXITCODE 18 | -------------------------------------------------------------------------------- /Assets/xamarin.essentials.icon.sketch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/Essentials/40d4041b083687fb52337c61fea86b30bd351a55/Assets/xamarin.essentials.icon.sketch -------------------------------------------------------------------------------- /Assets/xamarin.essentials_128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/Essentials/40d4041b083687fb52337c61fea86b30bd351a55/Assets/xamarin.essentials_128x128.png -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Code of Conduct 2 | 3 | This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. 4 | -------------------------------------------------------------------------------- /DeviceTests/DeviceTests.Android/Assets/AppBundleFile.txt: -------------------------------------------------------------------------------- 1 | This file was in the app bundle. -------------------------------------------------------------------------------- /DeviceTests/DeviceTests.Android/Assets/AppBundleFile_NoExtension: -------------------------------------------------------------------------------- 1 | This file was in the app bundle. -------------------------------------------------------------------------------- /DeviceTests/DeviceTests.Android/Assets/Folder/AppBundleFile_Nested.txt: -------------------------------------------------------------------------------- 1 | This file was in the app bundle. -------------------------------------------------------------------------------- /DeviceTests/DeviceTests.Android/Resources/drawable-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/Essentials/40d4041b083687fb52337c61fea86b30bd351a55/DeviceTests/DeviceTests.Android/Resources/drawable-hdpi/icon.png -------------------------------------------------------------------------------- /DeviceTests/DeviceTests.Android/Resources/drawable-xhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/Essentials/40d4041b083687fb52337c61fea86b30bd351a55/DeviceTests/DeviceTests.Android/Resources/drawable-xhdpi/icon.png -------------------------------------------------------------------------------- /DeviceTests/DeviceTests.Android/Resources/drawable-xxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/Essentials/40d4041b083687fb52337c61fea86b30bd351a55/DeviceTests/DeviceTests.Android/Resources/drawable-xxhdpi/icon.png -------------------------------------------------------------------------------- /DeviceTests/DeviceTests.Android/Resources/drawable/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xamarin/Essentials/40d4041b083687fb52337c61fea86b30bd351a55/DeviceTests/DeviceTests.Android/Resources/drawable/icon.png -------------------------------------------------------------------------------- /DeviceTests/DeviceTests.Android/Resources/layout/Main.axml: -------------------------------------------------------------------------------- 1 |  2 | 3 |