Considerações do navegador do sistema do Xamarin Android para uso da MSAL.NET

Este artigo discute o que você deve considerar ao usar o navegador do sistema no Xamarin Android com a Biblioteca de Autenticação da Microsoft para .NET (MSAL.NET).

Observação

MSAL.NET versões 4.61.0 e superiores não oferecem suporte para UWP (Plataforma Universal do Windows), Xamarin Android e Xamarin iOS. Recomendamos que você migre seus aplicativos Xamarin para estruturas modernas como o MAUI. Leia mais sobre a substituição em Anunciando a substituição futura de MSAL.NET para Xamarin e UWP.

A partir da MSAL.NET 2.4.0 versão prévia, a MSAL.NET dá suporte a outros navegadores além do Chrome. Ela não requer mais que o Chrome seja instalado no dispositivo Android para autenticação.

Recomendamos que você use navegadores que ofereçam suporte a guias personalizadas. Aqui estão alguns exemplos desses navegadores:

Navegadores com suporte para guias personalizadas Nome do pacote
Chrome com.android.chrome
Microsoft Edge com.microsoft.emmx
Firefox org.mozilla.firefox
Ecosia com.ecosia.android
Kiwi com.kiwibrowser.browser
Brave com.brave.browser

Além de identificar navegadores que oferecem suporte a guias personalizadas, nossos testes indicam que alguns navegadores que não dão suporte a guias personalizadas também funcionam para autenticação. Esses navegadores incluem Opera, Opera Mini, InBrowser e Maxthon.

Dispositivos e navegadores testados

A tabela a seguir lista os dispositivos e navegadores que foram testados quanto à compatibilidade de autenticação.

Dispositivo Navegador Resultado
Huawei/One+ Chrome* Aprovado
Huawei/One+ Edge* Aprovado
Huawei/One+ Firefox* Aprovado
Huawei/One+ Brave* Aprovado
One+ Ecosia* Aprovado
One+ Kiwi* Aprovado
Huawei/One+ Opera Aprovado
Huawei OperaMini Aprovado
Huawei/One+ InBrowser Aprovado
One+ Maxthon Aprovado
Huawei/One+ DuckDuckGo O usuário cancelou a autenticação
Huawei/One+ Navegador de UC O usuário cancelou a autenticação
One+ Dolphin O usuário cancelou a autenticação
One+ Navegador CM O usuário cancelou a autenticação
Huawei/One+ Nenhum instalado AndroidActivityNotFound exception

* Dá suporte a funções personalizadas

Problemas conhecidos

Se o usuário não tiver um navegador habilitado no dispositivo, a MSAL.NET gerará uma AndroidActivityNotFound exceção.

  • Mitigação: peça ao usuário para habilitar um navegador em seu dispositivo. Recomendamos um navegador que dê suporte a guias personalizadas.

Se a autenticação falhar (por exemplo, se a autenticação for iniciada com DuckDuckGo), MSAL.NET retornará AuthenticationCanceled MsalClientException.

  • Problema de raiz: um navegador que dá suporte a guias personalizadas não foi habilitado no dispositivo. A autenticação foi iniciada com um navegador que não pôde concluir a autenticação.
  • Mitigação: peça ao usuário para habilitar um navegador em seu dispositivo. Recomendamos um navegador que dê suporte a guias personalizadas.

Próximas etapas

Para obter mais informações e exemplos de código, consulte escolhendo entre um navegador da Web incorporado e um navegador do sistema no Xamarin Android e incorporado versus interface do usuário da Web do sistema.