Distribua aplicativos Android para testadores usando a CLI do Firebase

Este guia descreve como distribuir APKs para testadores usando a CLI do Firebase. A ferramenta CLI permite especificar testadores e notas de versão para uma compilação e, em seguida, distribui a compilação de acordo.

Antes de você começar

Adicione o Firebase ao seu projeto Android , caso ainda não o tenha feito.

Se você não estiver usando nenhum outro produto Firebase, basta criar um projeto e registrar seu aplicativo. No entanto, se você decidir usar produtos adicionais no futuro, certifique-se de concluir todas as etapas da página com link acima.

Etapa 1. Crie seu aplicativo

Quando estiver pronto para distribuir uma versão de pré-lançamento do seu aplicativo aos testadores, crie seu APK usando o processo normal. Você deve assinar o APK com sua chave de depuração ou chave de assinatura do aplicativo.

Etapa 2. Distribua seu aplicativo aos testadores

Para distribuir seu app aos testadores, faça upload do arquivo do app usando a CLI do Firebase:

  1. Instale ou atualize para a versão mais recente da CLI do Firebase (recomendamos fazer download do binário independente da CLI específica para seu sistema operacional). Certifique-se de fazer login e testar se você pode acessar seus projetos.
  2. Na página App Distribution do Firebase console, selecione o aplicativo que você deseja distribuir e clique em Primeiros passos .
  3. Execute o comando appdistribution:distribute para fazer upload do seu aplicativo e distribuí-lo aos testadores. Use os seguintes parâmetros para configurar a distribuição:

    appdistribution:distribuir opções
    --app

    Obrigatório : o Firebase App ID do seu aplicativo. Você pode encontrar o ID do aplicativo no console do Firebase, na página Configurações gerais .

    --app 1:1234567890:android:0a1b2c3d4e5f67890
    --token

    Um token de atualização impresso quando você autentica seu ambiente de CI com a CLI do Firebase (leia Usar a CLI com sistemas de CI para obter mais informações).

    --token "$FIREBASE_TOKEN"
    --release-notes
    --release-notes-file

    Notas de versão para esta compilação.

    Você pode especificar as notas de versão diretamente:

    --release-notes "Text of release notes"

    Ou especifique o caminho para um arquivo de texto simples:

    --release-notes-file "/path/to/release-notes.txt"
    --testers
    --testers-file

    Os endereços de e-mail dos testadores que você deseja convidar.

    Você pode especificar os testadores como uma lista de endereços de e-mail separados por vírgulas:

    --testers "ali@example.com, bri@example.com, cal@example.com"

    Ou você pode especificar o caminho para um arquivo de texto simples contendo uma lista de endereços de e-mail separados por vírgula:

    --testers-file "/path/to/testers.txt"
    --groups
    --groups-file

    Os grupos de testadores que você deseja convidar (consulte Gerenciar testadores ). Os grupos são especificados usando aliases de grupo , que você pode consultar no console do Firebase.

    Você pode especificar os grupos como uma lista separada por vírgulas:

    --groups "qa-team, trusted-testers"

    Ou você pode especificar o caminho para um arquivo de texto simples contendo uma lista de nomes de grupos separados por vírgula:

    --groups-file "/path/to/groups.txt"
    --debug

    Um sinalizador que você pode incluir para imprimir a saída de log detalhada.

    --test-devices
    --test-devices-file

    Os seguintes tipos de distribuição fazem parte do recurso Beta do testador automatizado .

    Os dispositivos de teste para os quais você deseja distribuir compilações (consulte Testes automatizados ).

    Você pode especificar os testadores como uma lista de endereços de e-mail separados por vírgulas:

    --test-devices: "model=shiba,version=34,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait"

    Ou você pode especificar o caminho para um arquivo de texto simples contendo uma lista de dispositivos de teste separados por ponto e vírgula:

    --test-devices-file: "/path/to/test-devices.txt"
    --test-username

    O nome de usuário para login automático a ser usado durante testes automatizados .

    --test-password
    --test-password-file

    A senha para login automático a ser utilizada durante testes automatizados .

    Ou você pode especificar o caminho para um arquivo de texto simples contendo uma senha:

    --test-password-file: "/path/to/test-password.txt"
    --test-username-resource

    Nome do recurso para o campo de nome de usuário para login automático a ser usado durante testes automatizados .

    --test-password-resource

    Nome do recurso do campo de senha para login automático a ser utilizado durante testes automatizados .

    --test-non-blocking

    Execute testes automatizados de forma assíncrona. Visite o console do Firebase para ver os resultados dos testes automáticos.

    Por exemplo:

    firebase appdistribution:distribute test.apk  \
        --app 1:1234567890:android:0a1b2c3d4e5f67890  \
        --release-notes "Bug fixes and improvements" --testers-file testers.txt
    

    A CLI do Firebase gera os links a seguir após o upload da versão. Esses links ajudam você a gerenciar binários e garantir que os testadores e outros desenvolvedores tenham a versão correta:

    • firebase_console_uri – um link para o console do Firebase exibindo uma única versão. Você pode compartilhar esse link com outros desenvolvedores da sua organização.
    • testing_uri – Um link para o lançamento na experiência do testador (aplicativo nativo do Android) que permite aos testadores visualizar as notas de lançamento e instalar o aplicativo em seus dispositivos. O testador precisa de acesso à versão para usar o link.
    • binary_download_uri - Um link assinado que baixa e instala diretamente o binário do aplicativo (arquivo APK ou AAB). O link expira após uma hora.

    Gerenciar testadores e grupos

    Além de distribuir versões, você também pode usar appdistribution:testers:add e appdistribution:testers:remove para convidar novos testadores ou remover testadores existentes do seu projeto do Firebase.

    Depois que um testador for adicionado ao seu projeto do Firebase, você poderá adicioná-lo a versões individuais. Depois que você remover um testador, ele não terá mais acesso às versões do seu projeto. Observe que os testadores removidos recentemente ainda poderão manter acesso às suas versões por um período de tempo.

    Por exemplo:

    firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com
    

    Os e-mails do testador devem ser separados por um espaço. Você também pode especificar testadores usando --file /path/to/testers.txt .

    Se você tiver um grande número de testadores, considere usar grupos: você pode usar appdistribution:group:create e appdistribution:group:delete para criar ou excluir grupos em seu projeto do Firebase.

    Use --group-alias para especificar um grupo para os appdistribution:testers:add e appdistribution:testers:remove .

    Por exemplo:

    firebase appdistribution:group:create "QA team" qa-team
    
    firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:group:delete qa-team
    

Depois de distribuir sua versão, ela ficará disponível no painel de distribuição de aplicativos do console do Firebase por 150 dias (cinco meses). Quando faltam 30 dias para a expiração da compilação, um aviso de expiração aparece no console e na lista de compilações do testador no dispositivo de teste.

Os testadores que não foram convidados para testar o aplicativo recebem convites por email para começar, e os testadores existentes recebem notificações por email de que uma nova compilação está pronta para ser testada (leia o guia de configuração do testador para obter instruções sobre como instalar o aplicativo de teste). Você pode monitorar o status de cada testador (se eles aceitaram o convite e se fizeram o download do aplicativo) no Console do Firebase.

Os testadores têm 30 dias para aceitar um convite para testar o aplicativo antes que ele expire. Quando faltam cinco dias para a expiração de um convite, um aviso de expiração aparece no Console do Firebase ao lado do testador em uma versão. Um convite pode ser renovado reenviando-o usando o menu suspenso na linha do testador.

Próximos passos