Festa de atualização do Android para atualizações do sistema operacional

Upgrade Party é um fluxo de descoberta que destaca novos recursos para usuários do Android sempre que eles recebem uma atualização importante do sistema operacional.

Uma grande atualização do sistema operacional Android pode ser uma experiência desanimadora para seus usuários. O fluxo Upgrade Party aumenta o envolvimento do usuário e ajuda os usuários a entender como navegar em seu sistema operacional recém-atualizado.

Depois de atualizar para a versão mais recente do sistema operacional, os usuários recebem uma notificação push dando as boas-vindas ao novo sistema operacional e apresentando um fluxo de cartões com os novos recursos.

Para ativar o Upgrade Party para o seu sistema operacional Android, registre-se usando o formulário Solicitar para ativar o Android Upgrade Party .

Personalize a experiência do Upgrade Party

Você pode personalizar a experiência do Upgrade Party das seguintes maneiras:

  • Remova recursos irrelevantes.
  • Atualize o idioma nos blocos de texto.
  • Modifique as animações, cores e fontes para combinar com sua marca.

Para personalizar o fluxo, revise as diretrizes no Guia de estilo do Upgrade Party e inclua suas informações de personalização no formulário Solicitar para ativar o Android Upgrade Party .

Guia de estilo de convite de atualização

Use este guia de estilo para modificar a aparência do Convite de atualização para se adequar à sua marca (telas, cores, fontes). É altamente recomendável manter os tamanhos e a estrutura próximos ao projeto original.

O fluxo de convite de atualização apresenta os três componentes a seguir:

  • Tela de introdução
  • Tela de recursos
  • Outra tela
Figura 1. Os três tipos de tela no fluxo de convite de upgrade

Uma animação em cada tela ajuda a explicar cada recurso.

Tela de introdução

A tela de introdução contém uma pequena animação que dá as boas-vindas ao usuário e o incentiva a iniciar o fluxo mostrado na tela de introdução.

Disposição
Figura 2. Layout de wireframe para a tela de introdução do convite de atualização

A animação do dispositivo sempre consiste em:

  • Fundo branco e formas coloridas
  • Quadro do dispositivo
  • Conteúdo da IU
Estilo

Se você optar por adaptar o estilo do Material You , poderá usar as cores e formas padrão mostradas no exemplo.

Figura 3. Esquema de cores padrão para o fluxo de convite de upgrade.

Se você usar a cor da sua própria marca, certifique-se de que ela funcione bem com o plano de fundo da IU.

Movimento

Opção 1: com relógio na tela inicial

  1. Os números entram na tela.
  2. Os números se movem para o centro enquanto diminuem de tamanho. A moldura do telemóvel aparece.
  3. O telefone diminui de tamanho. As formas começam a entrar na tela.
  4. A animação está concluída. As formas continuam se movendo suavemente.
Figura 4. Layout de wireframe para a animação da tela de introdução do Upgrade Invitation com um relógio.
Figura 5. Exemplo de animação para tela de introdução com relógio.

Opção 2: Sem relógio na tela inicial

  1. O celular entra na tela.
  2. O telefone se move para o centro enquanto aumenta de tamanho. As formas começam a entrar na tela.
  3. O telefone atinge o tamanho máximo e as formas continuam se movendo.
Figura 6. Layout de wireframe para a animação da tela de introdução do Upgrade Invitation sem relógio.
Figura 7. Exemplo de animação para tela de introdução sem relógio.

Tela de recursos

Cada tela de recursos destaca um recurso do novo sistema operacional.

Disposição
Figura 8. Layout de wireframe para as telas do recurso Upgrade Invitation.

A animação do dispositivo consiste sempre em:

  • Fundo colorido
  • Quadro do dispositivo
  • Conteúdo da IU
Estilo
  • Escolha uma cor de fundo que funcione bem com o conteúdo da IU e com a aparência geral.
  • Dentro das telas, defina tamanhos de fonte que sejam facilmente legíveis. Se necessário, defina tamanhos de fonte maiores.
Movimento

Grave uma animação do fluxo de cada recurso, incluindo interações por toque. Exporte as gravações como arquivos Lottie .

Outra tela

A tela final completa o fluxo. Indica aos usuários que eles passaram por todas as telas.

Disposição
Figura 9. Layout de wireframe para a tela final do convite de atualização.

A animação do dispositivo sempre consiste em:

  • Meio círculo no fundo (mais formas animadas)
  • Quadro do dispositivo
  • Conteúdo da IU
Estilo
  • Selecione uma cor de fundo que funcione bem com o conteúdo da IU e com a aparência geral.
  • Use uma forma de semicírculo.
Movimento

Siga o fluxo padrão de animação da tela final:

  1. O celular sobe um pouco.
  2. Um círculo aparece no fundo.
  3. Formas surgem por trás do celular.
  4. As formas voam para fora do fundo como confetes.
Figura 10. Layout de wireframe para a animação da tela final do Convite de atualização.
Figura 11. Exemplo de animação de tela final.

Acione o grupo de atualização com o SDK

Por padrão, o sistema operacional Android envia aos usuários uma notificação push apresentando um fluxo de cartão com os recursos mais recentes assim que eles atualizam. Se você preferir acionar o fluxo a partir de sua própria notificação push ou de um aplicativo, use o SDK do Android.

Pré-requisitos

Certifique-se de que o arquivo de compilação do seu aplicativo use os seguintes valores:

  • minSdkVersion 14 ou superior
  • compileSdkVersion de 28 ou superior

Configure seu aplicativo

  1. Extraia a biblioteca do arquivo Zip fornecido e coloque-a em seu repositório.
  2. Adicione as dependências do Google Growth SDK ao arquivo Gradle no nível do aplicativo do seu módulo, normalmente app/build.gradle :

     dependencies {
         implementation files('<PATH_TO_BINARY>/play-services-growth-16.1.0-eap04.aar')
     }
    
  3. Inclua as seguintes bibliotecas como dependências:

    com.google.android.gms:play-services-base:18.0.1
    com.google.android.gms:play-services-basement:18.0.0
    com.google.android.gms:play-services-tasks:18.0.1
    

Usar a API

  1. Para inicializar um cliente, use a classe UpgradeParty e defina o parâmetro activity .

     import com.google.android.gms.growth.UpgradeParty;
     UpgradeParty.getClient(activity);
    

O UpgradePartyClient resultante expõe a funcionalidade da API.

isEligibleForUpgradeParty

Task<Boolean> isEligibleForUpgradeParty();

Retorna um objeto Task que verifica de forma assíncrona se o usuário é elegível para um grupo de atualização. O valor booleano resultante indica se o usuário é elegível ou não.

invocarUpgradeParty

Task<Void> invokeUpgradeParty();

Invoca uma Activity de grupo de atualização. O objeto Task resultante indica se ocorreu um erro ao iniciar a atividade.

Erros

Ambos os métodos de API podem falhar, com exceção do tipo com.google.android.gms.common.api.ApiException . Nesses casos, espera-se que o chamador tente novamente mais tarde.

Os códigos de status comuns esperados incluem:

  • INTERNAL_ERROR : Representa qualquer erro no fluxo da lógica subjacente.
  • TIMEOUT : Mostrado quando a solicitação não pôde ser atendida em tempo hábil.
  • API_NOT_CONNECTED : significa que a API não está disponível (por exemplo, o módulo UpgradeParty ainda não está pronto).
  • DEVELOPER_ERROR : mostrado quando o pacote de chamada não tem permissão para acessar a classe UpgradeParty .

Exemplo de SDK

Veja o exemplo a seguir de um aplicativo que invoca o SDK:

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import com.google.android.gms.growth.UpgradeParty;
import com.google.android.gms.growth.UpgradePartyClient;

public class SampleActivity extends Activity {

 @Override
 protected void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   final UpgradePartyClient client = UpgradeParty.getClient(this);

   // Hide the invocation button initially
   View startUpgradePartyButton = findViewById(R.id.__some_button__);
   startUpgradePartyButton.setVisibility(View.GONE);

   // Register an onClick handler to invoke the Upgrade Party Activity
   startUpgradePartyButton
       .setOnClickListener(
           view -> {
             client
                 .invokeUpgradeParty()
                 .addOnCompleteListener(
                     task -> {
                       if (!task.isSuccessful()) {
                         // Do something with error, see task.getException()
                       }
                     });
           });
   }

   // Check if eligible for an Upgrade Party
   client
       .isEligibleForUpgradeParty()
       .addOnCompleteListener(
           task -> {
             if (!task.isSuccessful()) {
               // Do something with error, see task.getException()
             } else {
                  // Show/Hide invocation button, based on the result
                  int visibility =
                        task.getResult() ? View.VISIBLE : View.GONE;
                  startUpgradePartyButton..setVisibility(visibility);
             }
           });
   }

Teste o fluxo do grupo de atualização

Siga estas etapas para testar o fluxo do grupo de atualização que seus usuários veem quando atualizam o sistema operacional Android:

  1. No dispositivo Android de teste, vá para Configurações > Google > Upgrade Party debug .
  2. Selecione Report Upgrade e então Open Upgrade Party . Isso inicia o fluxo relevante, com base na versão do sistema operacional do dispositivo. Por exemplo, o Android 12 Upgrade Party é reproduzido em um dispositivo que executa o sistema operacional Android 12.