Compartilhar via


Inspetor de pacotes para MSAL Android Native

A MSAL (Biblioteca de Autenticação da Microsoft) para Android Native inclui uma ferramenta chamada Inspetor de Pacotes. Essa ferramenta lista os pacotes instalados em um dispositivo Android e permite que os usuários exibam, copiem e colem o hash de assinatura usado para assinar o pacote de um aplicativo. O Inspetor de Pacotes é inestimável para solucionar problemas e verificar o hash de assinatura de aplicativos instalados em um dispositivo Android. Este artigo aborda a instalação, o uso e os problemas comuns do Inspetor de Pacotes.

Cenários para usar o Inspetor de Pacotes

  • Você desenvolveu com êxito um aplicativo para usar a MSAL, mas depois de implantar o aplicativo na Google Play Store, o aplicativo não executa a autenticação.

    Nesse cenário, o Inspetor de Pacotes é útil para descobrir o novo hash de assinatura usado pelo Google para assinar o pacote do aplicativo.

  • Você está implementando a MSAL em seu aplicativo Android, mas encontra o seguinte erro:

    O URI de redirecionamento no arquivo de configuração não corresponde ao gerado com o nome do pacote e o hash de assinatura. Verifique o uri no arquivo de configuração e o registro do aplicativo no portal do Azure.

    Nesse cenário, você pode usar o Inspetor de Pacotes para verificar qual é o hash de assinatura do pacote e configurar o portal do Azure e o aplicativo para usar o hash de assinatura correto.

  • Você está implementando a MSAL em seu aplicativo Android, mas encontra o seguinte erro:

    Filtro de intenção para: BrowserTabActivity está ausente

    Esse erro ocorre porque o hash de assinatura especificado no arquivo AndroidManifest.xml não corresponde ao hash de assinatura usado para assinar o arquivo APK. Nesse cenário, o Inspetor de Pacotes é útil para verificar qual é o hash de assinatura.

Observação

Para obter mais informações sobre a MSAL para Android Native, consulte MSAL (Biblioteca de Autenticação da Microsoft) para Android.

Pré-requisitos

Antes de começar, verifique se você tem o seguinte:

  • Uma versão recente do Android Studio instalada.

    O Android Studio vem com um gerenciador do AVD. Para obter mais informações, consulte Criar e gerenciar dispositivos virtuais.

  • Um dispositivo Android virtual com aplicativos instalados.

  • Um dispositivo físico com opções de desenvolvedor, depuração USB habilitada e um cabo USB. Para obter mais informações, consulte Configurar opções de desenvolvedor no dispositivo.

  • Um aplicativo instalado para inspecionar.

Instalar o Inspetor de Pacotes

Há dois métodos para instalar o Inspetor de Pacotes:

Opção 1: clonar o repositório MSAL do Android diretamente no Android Studio

  1. Abra o Android Studio e feche todos os projetos abertos.

  2. Selecione Obter do controle de versão.

    Captura de tela que mostra a opção 'Obter do Controle de Versão' no Android Studio

  3. Verifique se git está selecionado na parte superior da janela, cole a URL do repositório MSAL do Android https://github.com/AzureAD/microsoft-authentication-library-for-android.gite selecione Clonar.

    Captura de tela que mostra como clonar um repositório Git no Android Studio

Opção 2: baixar o repositório MSAL do Android e abri-lo no Android Studio

  1. Baixar o repositório MSAL do Android.

  2. Extraia o arquivo zip para o diretório selecionado.

  3. Abra o Android Studio e feche todos os projetos abertos.

  4. Selecione Abrir um projeto existente.

    Captura de tela que mostra a opção

  5. Selecione o pacote raiz msal-android para o repositório MSAL do Android. Depois, selecione OK.

    Captura de tela mostrando a seleção do pacote raiz no Android Studio

    Observação

    • O nome padrão do pacote raiz é microsoft-authentication-library-for-android-dev. Neste exemplo, ele é renomeado msal-android.
    • Não selecione o diretório do package-inspector.

Usar o Inspetor de Pacotes

  1. Com o projeto MSAL android aberto no Android Studio, conecte o dispositivo Android desejado. Pode ser um dispositivo físico conectado à porta USB do computador ou um emulador inicializado do gerenciador do AVD do Android Studio. Verifique se o dispositivo aparece na lista suspensa na parte superior do Android Studio e selecione-o.

  2. À esquerda da lista suspensa do dispositivo, há outra lista suspensa. Selecione de inspetor de pacotes.

    Captura de tela que mostra a seleção do inspetor de pacotes no Android Studio

  3. Selecione o botão reproduzir (indicado com um círculo verde à direita) para compilar, instalar e executar o Inspetor de Pacotes no dispositivo selecionado.

    Captura de tela que mostra a seleção do botão reproduzir no Android Studio

  4. Navegue pela lista de pacotes no aplicativo Inspetor de Pacotes e selecione um pacote para exibir seu hash de assinatura. Todos os pacotes acessíveis aparecem nesta lista.

    Captura de tela que mostra a seleção do pacote no aplicativo Inspetor de Pacotes

Problemas comuns

Problemas ao carregar o Inspetor de Pacotes no Android Studio

Para resolver esses problemas, certifique-se de carregar o pacote raiz do repositório MSAL, não do Inspetor de Pacotes. Verifique se o projeto MSAL do Android que você carrega no Android Studio tem o nome microsoft-authentication-library-for-android-dev ou o que você renomeou o diretório raiz em seu sistema em vez de package-inspector. Para obter mais informações, consulte a etapa 5 em opção 2 na seção Instalar o Inspetor de Pacotes.

Nem todos os pacotes aparecem no Inspetor de Pacotes

Você instalou e abriu o Inspetor de Pacotes e uma lista de pacotes é exibida no aplicativo. No entanto, você não vê pacotes para nenhum aplicativo instalado no dispositivo. O problema pode ocorrer devido a alterações no Android 11 (API 30). Para obter mais informações, consulte Visibilidade do pacote.

Para resolver esse problema, siga estas etapas:

  1. Abra o arquivo AndroidManifest.xml no diretório package-inspector à esquerda do Android Studio.

  2. Adicione a seguinte permissão e consulta entre as marcas de <manifest></manifest>:

    <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.microsoft.inspector"></manifest>
    ...
    
    <permission android:name="android.permission.QUERY_ALL_PACKAGES" />
    
    <queries>
        <intent>
            <action android:name="android.intent.action.MAIN" />
        </intent>
    </queries>
    
  3. Execute novamente o aplicativo do Android Studio para aplicar as alterações. Em seguida, você pode ver os pacotes instalados.

Entre em contato conosco para obter ajuda

Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.