Introducción a Xamarin.EssentialsGet Started with Xamarin.Essentials

Xamarin.Essentials brinda una API multiplataforma única que funciona con cualquier aplicación iOS, Android o UWP accesible desde código compartido, sin importar cómo se creó la interfaz de usuario.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.

Compatibilidad de la plataformaPlatform Support

Xamarin.Essentials admite las siguientes plataformas y sistemas operativos:Xamarin.Essentials supports the following platforms and operating systems:

PlataformaPlatform VersiónVersion
AndroidAndroid 4.4 (API 19) o versiones posteriores4.4 (API 19) or higher
iOSiOS 10.0 o versiones posteriores10.0 or higher
UWPUWP 10.0.16299.0 o versiones posteriores10.0.16299.0 or higher

InstalaciónInstallation

Xamarin.Essentials está disponible como paquete NuGet que se puede agregar a cualquier proyecto nuevo o existente con Visual Studio.Xamarin.Essentials is available as a NuGet package that can be added to any existing or new project using Visual Studio.

  1. Descargue e instale Visual Studio con Visual Studio Tools para Xamarin.Download and install Visual Studio with the Visual Studio tools for Xamarin.

  2. Abra un proyecto existente o cree uno nuevo con la plantilla de aplicación vacía en Visual Studio C# (Android, iPhone e iPad o multiplataforma).Open an existing project, or create a new project using the Blank App template under Visual Studio C# (Android, iPhone & iPad, or Cross-Platform). Importante: Si se agrega a un proyecto de UWP, asegúrese de que en las propiedades del proyecto esté establecida la compilación 16299 u otra posterior.Important: If adding to a UWP project ensure Build 16299 or higher is set in the project properties.

  3. Agregue el paquete NuGet Xamarin.Essentials a cada proyecto:Add the Xamarin.Essentials NuGet package to each project:

    • Programa para la mejoraVisual Studio
    • Visual Studio para MacVisual Studio for Mac

    En el panel del Explorador de soluciones, haga clic con el botón derecho en el nombre de la solución y seleccione Administrar paquetes NuGet.In the Solution Explorer panel, right click on the solution name and select Manage NuGet Packages. Busque Xamarin.Essentials e instale el paquete en TODOS los proyectos, incluidos Android, iOS, UWP y las bibliotecas de .NET Standard.Search for Xamarin.Essentials and install the package into ALL projects including Android, iOS, UWP, and .NET Standard libraries.

  4. Agregue una referencia a Xamarin.Essentials en cualquier clase de C# para hacer referencia a las API.Add a reference to Xamarin.Essentials in any C# class to reference the APIs.

    using Xamarin.Essentials;
    
  5. Xamarin.Essentials requiere una configuración específica de plataforma:Xamarin.Essentials requires platform-specific setup:

    • AndroidAndroid
    • iOSiOS
    • UWPUWP

    La versión mínima de Android compatible con Xamarin.Essentials es la 4.4, que corresponde a un nivel de API 19, pero la versión de destino de Android para compilar debe ser la 9.0, correspondiente al nivel de 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. (En Visual Studio, estas dos versiones se establecen en el cuadro de diálogo Propiedades del proyecto correspondiente al proyecto de Android en la pestaña Manifiesto de Android). En Visual Studio para Mac, se establecen en el cuadro de diálogo Opciones del proyecto correspondiente al proyecto de Android, en la pestaña Aplicación de 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 instala la versión 28.0.0.1 de las bibliotecas de Xamarin.Android.Support que necesita.Xamarin.Essentials installs version 28.0.0.1 of the Xamarin.Android.Support libraries that it requires. Las demás bibliotecas de Xamarin.Android.Support que requiere la aplicación también se deben actualizar a la versión 28.0.0.1 con el administrador de paquetes 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. Todas las bibliotecas de Xamarin.Android.Support que la aplicación usa deben ser iguales y la versión debe ser al menos 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. Consulte la página de solución de problemas si no puede agregar el paquete NuGet de Xamarin.Essentials ni actualizar los paquetes NuGet de la solución.Refer to the troubleshooting page if you have issues adding the Xamarin.Essentials NuGet or updating NuGets in your solution.

    En MainLauncher del proyecto Android o en cualquier Activity que se inicia, Xamarin.Essentials se debe inicializar en el método 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
        //...
    

    Para controlar los permisos en tiempo de ejecución de Android, Xamarin.Essentials debe recibir cualquier OnRequestPermissionsResult.To handle runtime permissions on Android, Xamarin.Essentials must receive any OnRequestPermissionsResult. Agregue el código siguiente a todas las clases 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. Siga las guías de Xamarin.Essentials para poder copiar y pegar fragmentos de código para cada característica.Follow the Xamarin.Essentials guides that enable you to copy and paste code snippets for each feature.

Xamarin.Essentials : API multiplataformas para Mobile Apps (video)Xamarin.Essentials - Cross-Platform APIs for Mobile Apps (video)

Otros recursosOther Resources

Es recomendable que los desarrolladores que trabajan por primera vez con Xamarin visiten Introducción al desarrollo de Xamarin.We recommend developers new to Xamarin visit getting started with Xamarin development.

Visite el repositorio GitHub de Xamarin.Essentials para ver el código fuente actual, qué viene más adelante, ejecutar ejemplos y clonar el repositorio.Visit the Xamarin.Essentials GitHub Repository to see the current source code, what is coming next, run samples, and clone the repository. Estaremos encantados de recibir cualquier colaboración de la comunidad.Community contributions are welcome!

Examine la documentación de la API para conocer cada característica de Xamarin.Essentials.Browse through the API documentation for every feature of Xamarin.Essentials.