Introdução Xamarin.Essentials
Xamarin.Essentials fornece uma única API de plataforma cruzada que funciona com qualquer aplicativo iOS, Android ou UWP que pode ser acessado a partir de código compartilhado, independentemente de como a interface do usuário é criada. Confira o guia de suporte a plataformas e recursos para obter mais informações sobre os sistemas operacionais compatíveis.
Instalação
Xamarin.Essentials está disponível como um pacote NuGet e está incluído em cada novo projeto no Visual Studio. Ele também pode ser adicionado a qualquer projeto existente usando o Visual Studio com as seguintes etapas.
Faça o download e instale o Visual Studio com as Ferramentas do Visual Studio para Xamarin.
Abra um projeto existente ou crie um novo projeto usando o modelo Aplicativo em branco no C# do Visual Studio (Android, iPhone e iPad ou plataforma cruzada).
Importante
Se adicionar a um projeto UWP, verifique se o Build 16299 ou superior está definido nas propriedades do projeto.
Adicione o Xamarin.Essentials pacote NuGet a cada projeto:
No painel do Gerenciador de Soluções, clique com o botão direito do mouse no nome da solução e escolha Gerenciar pacotes NuGet. Xamarin.Essentials Procure e instale o pacote em TODOS os projetos, incluindo bibliotecas Android, iOS, UWP e .NET Standard.
Adicione uma referência a Xamarin.Essentials em qualquer classe C# para fazer referência às APIs.
using Xamarin.Essentials;
Xamarin.Essentials requer configuração específica da plataforma:
Xamarin.Essentials suporta uma versão mínima do Android 4.4, correspondente ao nível de API 19, mas a versão de destino do Android para compilação deve ser 9.0 ou 10.0, correspondendo ao nível de API 28 e nível 29. (No Visual Studio, essas duas versões são definidas na caixa de diálogo Propriedades do projeto para o projeto Android, na guia Manifesto do Android. No Visual Studio para Mac, eles são definidos na caixa de diálogo Opções do Projeto para o projeto Android, na guia Aplicativo Android.)
Ao compilar no Android 9.0, Xamarin.Essentials instala a versão 28.0.0.3 das bibliotecas Xamarin.Android.Support necessárias. As outras bibliotecas Xamarin.Android.Support exigidas pelo aplicativo também devem ser atualizadas para a versão 28.0.0.3 usando o gerenciador de pacotes NuGet. Todas as bibliotecas Xamarin.Android.Support usadas pelo aplicativo devem ser as mesmas e devem ter, pelo menos, a versão 28.0.0.3. Consulte a página de solução de problemas se tiver problemas para adicionar o NuGet ou atualizar o Xamarin.Essentials NuGets em sua solução.
A partir da versão 1.5.0 ao compilar com o Android 10.0, Xamarin.Essentials instale as bibliotecas de suporte do AndroidX necessárias. Leia a documentação do AndroidX se você ainda não fez a transição.
No projeto
MainLauncher
Android ou qualquer outroActivity
que é iniciado, Xamarin.Essentials deve ser inicializado noOnCreate
método: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 lidar com permissões de tempo de execução no Android, Xamarin.Essentials deve receber qualquer
OnRequestPermissionsResult
arquivo . Adicione o seguinte código a todas as classesActivity
:public override void OnRequestPermissionsResult(int requestCode, string[] permissions, Android.Content.PM.Permission[] grantResults) { Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults); base.OnRequestPermissionsResult(requestCode, permissions, grantResults); }
Siga os Xamarin.Essentials guias que permitem copiar e colar trechos de código para cada recurso.
Xamarin.Essentials - APIs multiplataforma para aplicativos móveis (vídeo)
Outros recursos
Recomendamos que os novos desenvolvedores do Xamarin confiram a Introdução ao desenvolvimento do Xamarin.
Visite o repositório do GitHub para ver o código-fonte atual, o que vem a seguir, executar amostras e clonar o Xamarin.Essentials repositório . Contribuições da comunidade são bem-vindas!
Navegue pela documentação da API para cada recurso do Xamarin.Essentials.