Essential cross platform APIs for your mobile apps.
Перейти к файлу
Gerald Versluis 61f37bb5b0 Update azure-pipelines.yml for Azure Pipelines 2024-02-01 14:28:20 +01:00
.github Enable open source docs feedback (#2124) 2024-02-01 13:18:34 +01:00
Assets New Icons! (#218) 2018-04-27 08:03:43 -07:00
DeviceTests Add API34 compatibility for networking & battery 2023-11-29 21:26:49 +01:00
Samples Update WebAuthenticator Sample app dependencies (#2116) 2024-01-15 12:56:43 +01:00
Tests Update dependencies 2022-11-01 15:32:25 +01:00
Xamarin.Essentials Switch to Security v1 template for compliance (#2114) 2024-01-08 19:46:37 +01:00
build-tools/automation/guardian Add GDN suppress file 2023-04-18 16:05:51 +02:00
docs Enable open source docs feedback (#2124) 2024-02-01 13:18:34 +01:00
.editorconfig No nested classes and no default access modifiers 2018-04-11 19:45:59 +02:00
.gitattributes .gitattributes: get better diff context for C# code (#1115) 2020-02-23 14:45:11 -05:00
.gitignore WebAuthenticator API (#1062) 2020-01-30 18:54:06 -08:00
.openpublishing.build.ps1 Initialize open publishing repository: https://github.com/xamarin/Essentials of branch master 2018-04-10 19:29:18 +00:00
.openpublishing.publish.config.json update with existing .openpublishing.publish.config.json 2022-04-07 01:05:14 -07:00
CODE_OF_CONDUCT.md Initial attempt at contribution, submission docs, and templates 2018-02-23 22:35:58 +00:00
CONTRIBUTING.md Merge branch 'origin/main' into develop 2020-09-15 16:53:30 +02:00
Directory.Build.props Getting the solution to load without freezing + updates (#977) 2019-11-15 03:35:29 +02:00
LICENSE Rebranding to Xamarin.Essentials (#152) 2018-04-05 20:46:34 -04:00
LICENSE-CODE Initialize open publishing repository: https://github.com/xamarin/Essentials of branch master 2018-04-10 19:29:18 +00:00
NuGet.config Create NuGet.config 2023-04-18 16:37:40 +02:00
PRODUCT-FEEDBACK.md [BULK UPDATE] DocuTune - Rebranding links 2022-09-19 19:49:56 -04:00
README.md Update README.md 2023-02-28 15:35:31 +01:00
SUBMITTING-ISSUES.md Update links in markdown files 2018-04-10 11:05:46 +02:00
SignList.xml Add v2 Signing (#1478) 2020-10-27 21:58:02 +02:00
ThirdPartyNotices Initialize open publishing repository: https://github.com/xamarin/Essentials of branch master 2018-04-10 19:29:18 +00:00
Xamarin.Essentials.ruleset Rebranding to Xamarin.Essentials (#152) 2018-04-05 20:46:34 -04:00
Xamarin.Essentials.sln Merge branch 'develop' into 1.6.0 2020-07-20 10:11:35 -04:00
android-setup.ps1 Android setup Script (#1086) 2020-02-10 09:01:30 -08:00
appcenter-post-clone.sh Update Samples.iOS app to be compatible with App Store (#1508) 2020-11-11 15:49:05 +02:00
azure-pipelines.yml Update azure-pipelines.yml for Azure Pipelines 2024-02-01 14:28:20 +01:00
build.cake async 2023-04-19 15:08:15 +02:00
nugetreadme.txt grammar fix (#1202) 2020-03-31 13:57:14 -07:00
stylecop.json We want to use spaces and not tabs 2018-02-28 23:07:46 +02:00

README.md

Xamarin.Essentials

Xamarin.Essentials gives developers essential cross-platform APIs for their mobile applications.

iOS, Android, and UWP offer unique operating system and platform APIs that developers have access to, all in C# leveraging Xamarin. It is great that developers have 100% API access in C# with Xamarin, but these APIs are different per platform. This means developers have to learn three different APIs to access platform-specific features. With Xamarin.Essentials, developers have a single cross-platform API that works with any iOS, Android, or UWP application that can be accessed from shared code no matter how the user interface is created.

Questions

Get your technical questions answered by experts on Microsoft Q&A.

Contribution Discussion

Contributing to Xamarin.Essentials? Join our Discord server and chat with the team

Build Status

Build Server Type Platform Status
Azure DevOps Build Windows Build Status

Installation

Xamarin.Essentials is available via NuGet & is included in every template:

Please read our Getting Started with Xamarin.Essentials guide for full setup instructions.

Xamarin.Essentials with .NET MAUI and iOS/Android .NET projects

Starting in .NET 6, Xamarin.Essentials was added into .NET MAUI directly. The team has worked hard to ensure that while it comes pre-configured with every .NET MAUI application, it is still available to all iOS and Android apps built with .NET. If you are building a .NET MAUI project there is nothing more for you to do, just start using the APIs. If you are migrating a Xamarin.iOS or Xamarin.Android app and want to use the Essentials APIs, then add the following into your project's csproj file:

<PropertyGroup>
  <UseMauiEssentials>true</UseMauiEssentials>
</PropertyGroup>

Once you update to .NET MAUI Essentials, you will need to update any using Xamarin.Essentials; using statements (and any other namespace references) to the new .NET MAUI Essentials namespaces, which you can find in the documentation.

Documentation

Browse our full documentation for Xamarin.Essentials, including feature guides, on how to use each feature.

Supported Platforms

Platform support & feature support can be found on our documentation

Contributing

Please read through our Contribution Guide. We are not accepting new PRs for full features, however any issue that is marked as up for grabs are open for community contributions. We encourage creating new issues for bugs found during usage that the team will triage. Additionally, we are open for code refactoring suggestions in PRs.

Building Xamarin.Essentials

Xamarin.Essentials is built with the new SDK-style projects with multi-targeting enabled. This means that all code for iOS, Android, and UWP exist inside of the Xamarin.Essentials project.

Visual Studio

A minimum version of Visual Studio 2019 16.3 or Visual Studio for Mac 2019 8.3 are required to build and compile Xamarin.Essentials.

Workloads needed:

  • Xamarin
  • .NET Core
  • UWP

You will need the following SDKs

  • Android 10.0, 9.0, 8.1, 8.0, 7.1, 7.0, & 6.0 SDK Installed
  • UWP 10.0.16299 SDK Installed

Your can run the included android-setup.ps1 script in Administrator Mode and it will automatically setup your Android environment.

FAQ

Here are some frequently asked questions about Xamarin.Essentials, but be sure to read our full FAQ on our Wiki.

License

Please see the License.

Stats