O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Perfis de energia para Android

As informações de uso da bateria são derivadas das estatísticas de uso da bateria e dos valores do perfil de energia.

Estatísticas de uso da bateria

A estrutura determina automaticamente as estatísticas de uso da bateria, rastreando quanto tempo os componentes do dispositivo ficam em diferentes estados. Conforme os componentes (chipset Wi-Fi, rádio celular, Bluetooth, GPS, display, CPU) mudam de estado (OFF / ON, inativo / potência total, brilho baixo / alto, etc.), o serviço de controle se reporta ao serviço BatteryStats do framework. BatteryStats coleta informações ao longo do tempo e as armazena para uso durante as reinicializações. O serviço não rastreia o consumo de corrente da bateria diretamente, mas, em vez disso, coleta informações de tempo que podem ser usadas para aproximar o consumo da bateria por diferentes componentes.

A estrutura reúne estatísticas usando os seguintes métodos:

  • Empurre . Os serviços cientes das mudanças de componentes enviam mudanças de estado para o serviço BatteryStats.
  • Puxe . Para componentes como o uso da CPU por aplicativos, a estrutura puxa automaticamente os dados em pontos de transição (como iniciar ou interromper uma atividade) para tirar um instantâneo.

O consumo de recursos está associado ao aplicativo que usa o recurso. Quando vários aplicativos usam um recurso simultaneamente (como wakelocks que impedem a suspensão do sistema), a estrutura distribui o consumo entre esses aplicativos, embora não necessariamente de forma igual.

Para evitar a perda de estatísticas de uso para um evento de desligamento, que pode indicar problemas de consumo de energia da bateria (ou seja, o desligamento ocorre porque a bateria atingiu a capacidade restante zero), a estrutura atualiza as estatísticas aproximadamente a cada 30 minutos.

As estatísticas de uso da bateria são gerenciadas inteiramente pela estrutura e não requerem modificações do OEM.

Valores do perfil de potência

Cuidado: Os fabricantes de dispositivos devem fornecer um perfil de energia do componente que defina o valor de consumo atual do componente e o consumo aproximado da bateria causado pelo componente ao longo do tempo. Este perfil é definido em platform / frameworks / base / core / res / res / xml / power_profile.xml . Para obter orientação sobre essas configurações, consulte Valores de energia .

Dentro de um perfil de energia, o consumo de energia é especificado em miliamperes (mA) de consumo de corrente em uma tensão nominal e pode ser um valor fracionário especificado em microamperes (uA). O valor deve ser o mA consumido na bateria e não um valor aplicável a um barramento de alimentação que não corresponda à corrente consumida da bateria.

Por exemplo, um perfil de energia da tela especifica o mA da corrente necessária para manter a tela ligada com brilho mínimo e máximo. Para determinar o custo de energia (ou seja, a bateria descarregada pelo componente da tela) para manter a tela ligada, a estrutura rastreia o tempo gasto em cada nível de brilho e, em seguida, multiplica esses intervalos de tempo por um custo de brilho de tela interpolado.

A estrutura também multiplica o tempo de CPU para cada aplicativo pelo mA necessário para executar a CPU em uma velocidade específica. Este cálculo estabelece uma classificação comparativa de quanta bateria um aplicativo consome executando o código da CPU (o tempo do aplicativo em primeiro plano e o tempo total incluindo a atividade em segundo plano são relatados separadamente).