Начало работы с Xamarin.EssentialsGet Started with Xamarin.Essentials

Xamarin.Essentials обеспечивает единый кроссплатформенных API-интерфейс, который предоставляет доступ из общего кода для любого приложения iOS, Android и универсальной платформы Windows независимо от используемого метода создания пользовательского интерфейса.Xamarin.Essentials provides 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.

Поддержка платформPlatform Support

Xamarin.Essentials поддерживает указанные ниже платформы и операционные системы.Xamarin.Essentials supports the following platforms and operating systems:

PlatformPlatform ВерсияVersion
AndroidAndroid 4.4 (API 19) или более поздней версии4.4 (API 19) or higher
iOSiOS 10.0 или выше10.0 or higher
UWPUWP 10.0.16299.0 или более поздней версии10.0.16299.0 or higher

УстановкаInstallation

Xamarin.Essentials предоставляется в виде пакета NuGet, который с помощью Visual Studio можно добавить в любой существующий или новый проект.Xamarin.Essentials is available as a NuGet package that can be added to any existing or new project using Visual Studio.

  1. Скачайте и установите Visual Studio с помощью средств Visual Studio для Xamarin.Download and install Visual Studio with the Visual Studio tools for Xamarin.

  2. Откройте существующий проект или создайте новый, используя шаблон пустого приложения в разделе Visual Studio C# (для Android, для iPhone и iPad или кроссплатформенный).Open an existing project, or create a new project using the Blank App template under Visual Studio C# (Android, iPhone & iPad, or Cross-Platform). Важно. При добавлении в проект UWP укажите в свойствах проекта сборку 16299 или более позднюю версию.Important: If adding to a UWP project ensure Build 16299 or higher is set in the project properties.

  3. Добавьте пакет NuGet для Xamarin.Essentials в каждый из проектов:Add the Xamarin.Essentials NuGet package to each project:

    На панели обозревателя решений щелкните правой кнопкой мыши имя решения и выберите Управление пакетами NuGet.In the Solution Explorer panel, right click on the solution name and select Manage NuGet Packages. Найдите Xamarin.Essentials и установите пакет во ВСЕ проекты, в том числе для Android, iOS, универсальной платформы Windows и .NET Standard.Search for Xamarin.Essentials and install the package into ALL projects including Android, iOS, UWP, and .NET Standard libraries.

  4. Добавьте ссылку на Xamarin.Essentials в любой класс C#, чтобы включить в него API-интерфейсы.Add a reference to Xamarin.Essentials in any C# class to reference the APIs.

    using Xamarin.Essentials;
    
  5. Для Xamarin.Essentials нужно настроить в соответствии с конкретной платформой:Xamarin.Essentials requires platform-specific setup:

    Xamarin.Essentials поддерживает Android с минимальной версии 4.4, что соответствует уровню API 19. Но целевая версия Android для компиляции должна быть не ниже 9.0, что соответствует уровню API 28.Xamarin.Essentials supports a minimum Android version of 4.4, corresponding to API level 19, but the target Android version for compiling must be 9.0, corresponding to API level 28. (В Visual Studio эти две версии задаются в диалоговом окне свойств проекта для проекта Android, на вкладке "Манифест Android". В Visual Studio для Mac эти значения задаются в диалоговом окне свойств проекта для проекта Android, на вкладке "Приложение Android".)(In Visual Studio, these two versions are set in the Project Properties dialog for the Android project, in the Android Manifest tab. In Visual Studio for Mac, they're set in the Project Options dialog for the Android project, in the Android Application tab.)

    Xamarin.Essentials устанавливает версию 28.0.0.1 всех требуемых библиотек Xamarin.Android.Support.Xamarin.Essentials installs version 28.0.0.1 of the Xamarin.Android.Support libraries that it requires. Все другие библиотеки Xamarin.Android.Support, которые использует приложение, также следует обновить до версии 28.0.0.1 с помощью диспетчера пакетов NuGet.Any other Xamarin.Android.Support libraries that your application requires should also be updated to version 28.0.0.1 using the NuGet package manager. Все библиотеки Xamarin.Android.Support, используемые в приложении, должны иметь одну и ту же версию (не ниже версии 28.0.0.1).All Xamarin.Android.Support libraries used by your application should be the same, and should be at least version 28.0.0.1. Если вы столкнетесь с проблемами при добавлении пакета NuGet для Xamarin.Essentials или при обновлении пакетов NuGet в решении, воспользуйтесь страницей устранения неполадок.Refer to the troubleshooting page if you have issues adding the Xamarin.Essentials NuGet or updating NuGets in your solution.

    В MainLauncher проекта Android или в любом запущенном действии Activity следует инициализировать Xamarin.Essentials в методе OnCreate следующим образом:In the Android project's MainLauncher or any Activity that is launched Xamarin.Essentials must be initialized in the OnCreate method:

    protected override void OnCreate(Bundle savedInstanceState) {
        //...
        base.OnCreate(savedInstanceState);
        Xamarin.Essentials.Platform.Init(this, savedInstanceState); // add this line to your code, it may also be called: bundle
        //...
    

    Для обработки на устройстве Android разрешений среды выполнения Xamarin.Essentials нужно получить любой OnRequestPermissionsResult.To handle runtime permissions on Android, Xamarin.Essentials must receive any OnRequestPermissionsResult. Добавьте следующий код во все классы Activity:Add the following code to all Activity classes:

    public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults)
    {
        Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
    
        base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
    }
    
  6. Выполните инструкции, приведенные в руководствах Xamarin.Essentials по копированию и вставке фрагментов кода для каждого компонента.Follow the Xamarin.Essentials guides that enable you to copy and paste code snippets for each feature.

Xamarin.Essentials — кроссплатформенные API-интерфейсы для мобильных приложений (видео)Xamarin.Essentials - Cross-Platform APIs for Mobile Apps (video)

Другие ресурсыOther Resources

Мы рекомендуем разработчикам, которые еще не работали с Xamarin, начать с этой статьи.We recommend developers new to Xamarin visit getting started with Xamarin development.

Посетите репозиторий GitHub для Xamarin.Essentials, чтобы изучить актуальный исходный код, узнать ближайшие планы развития, выполнить примеры кода и клонировать репозиторий.Visit the Xamarin.Essentials GitHub Repository to see the current source code, what is coming next, run samples, and clone the repository. Мы рады любому вкладу в сообщество!Community contributions are welcome!

Изучите документацию по API для любого компонента Xamarin.Essentials.Browse through the API documentation for every feature of Xamarin.Essentials.