Participe do evento ⁠#Android11: apresentação de lançamento da versão Beta no dia 3 de junho.

Otimizar o uso da rede iniciado pelo usuário

O processamento rápido das solicitações do usuário ajuda a garantir uma boa experiência, especialmente com relação a ações que exigem acesso à rede. Priorize a baixa latência em vez da preservação de energia para oferecer a resposta mais rápida ao otimizar o uso da rede, que é um resultado direto das ações do usuário. Pode ser um tanto desafiador alcançar um perfil de tráfego de rede ideal para seu app ao mesmo tempo em que garante que os usuários recebam respostas rápidas.

Esta lição ensina como otimizar o uso da rede para ações iniciadas pelo usuário e reduzir o consumo de bateria.

Pré-buscar dados da rede

A pré-busca de dados é uma maneira eficaz de reduzir o número de sessões independentes de transferência de dados que seu app executa. Com a pré-busca, quando o usuário realiza uma ação, o app prevê quais dados provavelmente serão necessários para a próxima série de ações e busca esses dados em massa. O consumo de energia da bateria é reduzido por dois motivos:

  • Porque seu app pré-busca dados somente quando o rádio móvel já está ativo a partir da ação do usuário e, portanto, não gera a sobrecarga de ativação do rádio móvel.
  • O app pré-busca dados para ações previstas do usuário, e cada um deles pode exigir solicitações separadas que ativam individualmente o rádio móvel.

Observação: para saber se seu app pode se beneficiar da pré-busca, analise o tráfego de rede dele e procure situações em que uma série específica de ações do usuário quase sempre resulta em várias solicitações de rede durante a tarefa. Por exemplo, um app que faz o download incremental do conteúdo de artigos enquanto o usuário o visualiza pode pré-buscar um ou mais artigos nas categorias que costumam ser acessadas.

Assista o vídeo sobre a pré-busca eficaz, que descreve o que é esse recurso, onde usá-lo e que quantidade de dados deve ser pré-buscada. Para saber mais detalhes, consulte Otimizar downloads para um acesso de rede eficiente.

Verificar a conectividade ou ouvir mudanças

A pesquisa por um sinal de celular é uma das operações com maior consumo de energia em um dispositivo móvel. O app precisa sempre verificar a conectividade antes de enviar uma solicitação de rede iniciada pelo usuário. Se você usa um serviço de programação, os Programadores farão isso automaticamente.

  • Se apenas alguns botões na sua atividade dependem de uma conexão de rede, use o Gerenciador de conectividade para verificar se há conexão de rede antes de enviar a solicitação, conforme instruído em Monitorar mudanças na conectividade. Se não houver rede, o app poderá economizar bateria ao não forçar o rádio móvel a pesquisar.
  • Se a interface do usuário de toda a atividade não estiver funcionando sem acesso à rede, use a Manipulação de receptores de transmissão sob demanda. Essa técnica ouve mudanças de conectividade quando a atividade está no primeiro plano e evita que solicitações de rede continuem quando não há conectividade. Ou seja, se o app detectar que a conectividade foi perdida, ele desativará todos os receptores, exceto o de mudança de conectividade. Por exemplo, imagine um app de notícias que apresenta uma atividade com visualização em tela cheia dos snippets de notícias e que não faz pré-busca. Qualquer snippet que o usuário tocar exigirá uma conexão de rede.

Uma prática recomendada para o tráfego iniciado pelo usuário é verificar primeiro se há conexão por meio do Gerenciador de conectividade. Se não houver, programe a solicitação de rede para quando a conexão estiver estabelecida. Os programadores usarão técnicas como a espera exponencial para economizar bateria. Com essas técnicas, cada vez que a tentativa de conexão falhar, o programador dobrará o atraso antes da próxima tentativa.

Observação: para verificar se há conectividade para o tráfego iniciado pelo app, consulte Otimizar o uso de rede iniciado pelo app.

Reduzir o número de conexões

Em geral, é mais eficiente reutilizar as conexões de rede existentes do que iniciar novas. A reutilização de conexões também permite que a rede reaja de forma mais inteligente ao congestionamento e a problemas de dados relacionados. Para saber mais sobre como reduzir o número de conexões usadas pelo app, consulte Otimizar downloads para um acesso de rede eficiente.