O uso de dados móveis é caro, ainda mais quando os custos do plano de dados não são acessíveis a todos. Os usuários do Android precisam ter a capacidade de reduzir o uso de dados ou bloqueá-lo completamente nos apps. O recurso Economia de dados na versão 7.0 do Android oferece essa funcionalidade ao usuário.
O recurso Economia de dados pode ser ativado ou desativado pelo usuário. Os desenvolvedores de apps precisam usar uma nova API para verificar se o modo Economia de dados está ativado. Se estiver, os desenvolvedores de apps poderão lidar com a situação de maneira adequada, ajustando os aplicativos para acesso com poucos ou nenhum dado.
Os usuários finais se beneficiam porque podem controlar quais apps podem acessar dados em segundo plano e quais podem acessar dados apenas em primeiro plano. Isso garante a troca de dados em segundo plano desejada quando a Economia de dados está ativada por controle do usuário.
Implementação
Como a Economia de dados é um recurso na plataforma, os fabricantes de dispositivos ganham a funcionalidade por padrão com a versão N. Encontre os arquivos de origem em:
packages/apps/Settings/src/com/android/settings/datausage
Interface de configurações
Uma interface de usuário de configurações padrão da Economia de dados é fornecida no Android Open Source Project (AOSP). Confira os exemplos nas capturas de tela abaixo.
Essas capturas de tela mostram o modo Economia de dados em uso.
Figura 1. Ativar/desativar a Economia de dados
Figura 2. Quando a Economia de bateria e a Economia de dados estão ativadas
Figura 3. Tela de uso de dados específicos do app: Configurações > Apps > Uso de dados
Figura 4. Estados da Economia de dados no menu Configurações rápidas
Apps
Importante: os implementadores de dispositivos não devem permitir apps. Mesmo que façam isso, os usuários podem removê-los. A inclusão de outros apps força os usuários a decidir em qual aplicar a Economia de dados.
Todos os desenvolvedores de apps precisam agir para implementar a Economia de dados, incluindo OEMs e operadoras com apps pré-carregados. Consulte a Economia de dados em developer.android.com para instruções do desenvolvedor de apps sobre como detectar e monitorar estados da Economia de dados. Consulte as seções abaixo para mais detalhes úteis para parceiros.
Para otimizar o modo Economia de dados, os apps precisam:
- Remover imagens desnecessárias
- Usar resolução mais baixa para as imagens restantes
- Usar vídeo com taxa de bits mais baixa
- Acionar experiências "lite" atuais
- Compactar dados
- Respeitar o status da rede limitada em comparação com a ilimitada, mesmo quando a Economia de dados está desativada
Por outro lado, para funcionar bem com a Economia de dados, os apps não devem:
- Reprodução automática de vídeos
- Pré-buscar conteúdo/anexos
- Fazer o download de atualizações / código
- Pedir para serem permitidos, a menos que os dados em segundo plano façam parte da funcionalidade principal
- Tratar a permissão como uma licença para usar mais largura de banda
Validação
Os implementadores podem garantir que a versão do recurso funcione conforme o esperado executando o seguinte teste do CTS:
com.android.cts.net.HostsideRestrictBackgroundNetworkTests
Além disso, os comandos adb podem ser usados para realizar testes manualmente. Primeiro, execute este comando para conferir todas as opções disponíveis:
adb shell cmd netpolicy
Por exemplo, este comando retorna os UIDs dos apps permitidos:
adb shell cmd netpolicy list restrict-background-whitelist