Criar um pacote de apps instantâneos

Você cria uma experiência do Google Play Instant ao incluí-lo como parte de um Android App Bundle. Esse pacote é conhecido como um pacote de apps instantâneos. Este documento mostra como configurar seu ambiente de desenvolvimento para pacotes de apps instantâneos, além de como configurar, criar, testar e publicar um pacote de apps instantâneos.

Se você tiver um projeto de app instantâneo que use o plug-in de recurso obsoleto (com.android.feature), saiba como migrar seu app instantâneo para torná-lo compatível com Android App Bundles.

Configurar o ambiente de desenvolvimento

Para oferecer uma experiência instantânea em um pacote de apps, você precisa de acesso ao SDK de desenvolvimento do Google Play Instant. Para instalar o SDK, siga um destes métodos:

  • Instale o Android Studio 3.3 ou uma versão posterior. Depois de abrir o Android Studio, faça o download do SDK de desenvolvimento do Google Play Instant na guia SDK Tools do SDK Manager.
  • Instale a partir da linha de comando:

        cd path/to/android/sdk/tools/bin && \
          ./sdkmanager 'extras;google;instantapps'
        

Além disso, se você quiser testar sua experiência instantânea localmente, acesse um dispositivo físico ou virtual.

Configurar seu projeto para experiências instantâneas

Para ser compatível com o Google Play Instant, você precisa configurar vários aspectos do pacote de apps instantâneos com atenção. As seções a seguir descrevem essas considerações.

Módulos de apps instantâneos

Você pode declarar que o pacote de apps é compatível com experiências instantâneas usando um destes métodos:

Permissões compatíveis

Os pacotes de apps instantâneos só podem usar permissões desta lista:

Acesso aos apps instalados

Ao desenvolver uma experiência instantânea, lembre-se de que ela não pode interagir com apps instalados em um dispositivo, a menos que uma das seguintes situações seja verdadeira:

  • Uma ou mais atividades no app instalado têm o elemento android:visibleToInstantApps configurado como true. Esse elemento está disponível para apps com Android 8.0 (API de nível 26) ou versões mais recentes.
  • Um app instalado tem um filtro de intent que inclui CATEGORY_BROWSABLE.
  • A experiência instantânea está enviando um intent usando a ação ACTION_SEND, ACTION_SENDTO ou ACTION_SEND_MULTIPLE.

Ambiente de execução

O Google Play Instant executa pacotes de apps instantâneos em um tipo especial de sandbox do SELinux para maior segurança. Para ser compatível com esse ambiente, você precisa criar a seguinte configuração no pacote de apps instantâneos:

  • Em Network Security Config, configure usesCleartextTraffic como false.
  • Não compartilhe o valor de myUid(), que é o UID atribuído pelo kernel do processo do app.

Criar o pacote de apps

Você pode usar o Android Studio ou a interface de linha de comando para criar seu pacote de apps instantâneos.

Android Studio

Com o Android Studio, você pode criar seu pacote de apps selecionando Build > Build Bundle(s) / APK(s) > Build Bundle(s). Para mais informações sobre como criar seu projeto, consulte Criar o projeto.

Interface de linha de comando

Você também pode criar o pacote de apps a partir da linha de comando usando o Gradle. Depois disso, realize uma verificação de integridade de experiência instantânea executando o seguinte comando:

    ia check app-artifact
    

O artefato do app pode ser um arquivo ZIP, um pacote de apps ou uma lista de APKs que contenham pelo menos uma experiência instantânea.

Testar a experiência instantânea

Antes de publicar seu pacote de apps instantâneos, teste a experiência instantânea em um dos seguintes locais para verificar a funcionalidade:

Android Studio

Para testar a experiência instantânea do seu app em uma máquina local usando o Android Studio, siga estas etapas:

  1. Se houver uma versão do app instalada no dispositivo de teste, desinstale-a.
  2. No Android Studio, nas opções de instalação que aparecem na guia General da caixa de diálogo Run/Debug Configurations, marque a caixa de seleção Deploy as instant app.
  3. Selecione Run > Run na barra de menus ou clique em Run na barra de ferramentas e escolha o dispositivo em que você quer testar as experiências instantâneas do app. A experiência instantânea do seu app será carregada no dispositivo de teste que você escolheu.

Interface de linha de comando

Para testar a experiência instantânea do seu app em uma máquina local usando o Android Studio, siga estas etapas:

  1. Se houver uma versão do app instalada no dispositivo de teste, desinstale-a.
  2. Transfira seu app instantâneo por sideload e execute-o no dispositivo de teste inserindo o seguinte comando:
    ia run output-from-build-command
    

Faixa de teste interno

Para testar a experiência instantânea do seu app na Play Store ou em um banner do seu site, publique o app na faixa de teste interno do Play Console. Para isso, siga os seguintes passos:

  1. Faça upload do pacote de apps seguindo as etapas do guia Fazer upload do seu pacote de apps para o Play Console.
  2. Prepare o pacote enviado para lançamento na faixa de teste interno. Para mais informações, consulte o artigo de suporte sobre como Preparar e lançar versões.
  3. Faça login em uma conta de testes interna em um dispositivo e inicie sua experiência instantânea a partir de uma das seguintes superfícies:

    • O botão Testar agora nas informações do app na Play Store
    • Link de um banner no site do seu app

Publicar o pacote de apps na faixa de produção

Para publicar seu pacote de apps instantâneos, siga estas etapas:

  1. Assine o pacote de apps com uma chave de lançamento e faça upload do pacote para o Play Console, caso ainda não tenha feito isso.
  2. No Play Console, abra Gerenciamento da versão > Instant Apps Android e navegue até a faixa de produção de app instantâneo.
  3. Selecione Atualizar na biblioteca e escolha o pacote de apps instantâneos que você enviou.

Outros recursos

Para saber mais sobre como criar experiências instantâneas e Android App Bundles, consulte os seguintes recursos:

Vídeo: empacotar um app em um instantâneo (em inglês)
Saiba como adicionar uma experiência instantânea a um Android App Bundle nesta sessão da Conferência de Desenvolvedores Android 2018.
Vídeo: publicar apps menores com o Android App Bundle (em inglês)
Saiba como os pacotes de apps ajudam a desenvolver seu app de forma mais rápida e criam APKs menores para seus usuários.
Codelab: seu primeiro Android App Bundle (link em inglês)
Um guia passo a passo para criar um Android App Bundle e adicionar recursos a ele.
O formato Android App Bundle
Saiba mais sobre como o programa de linha de comando bundletool organiza um pacote de apps a partir do código e dos recursos do seu app.