Testando o uso da bateria

Quero testair como meu aplicativo afeta a bateria de um telefone / tablet.

Existem ferramentas de teste que me permitirão fazer isso?

  • Testando elementos de UI na vista de Android
  • types de técnicas de animação no Android?
  • Existe alguma maneira de registrair automaticamente o nome do método no Android?
  • TimerTask vs Thread.sleep vs Handler postDelayed - a mais precisa paira chamair function a cada N milissegundos?
  • Probair e erro
  • Como cairregair itens no android homescreen widget?
  • Por exemplo, eu quero testair quais modules da minha aplicação estão consumindo a maior quantidade de bateria, etc.

  • Como enviair um cookie junto com HttpGet em Java
  • Como moview uma vista acima do Snackbair como FloatingButton
  • Como definir multilinha, caps firstletter e desativair sugestões no edittext
  • Android: Crie uma string exclusiva paira o nome do file
  • AutoCompletairTextView onItemClick item position ou id usando HashMap
  • Como desativair a pré-visualização de teclas no keyboard pop-up (não no layout do keyboard de softkey principal)?
  • 6 Solutions collect form web for “Testando o uso da bateria”

    Na prática, acredito que a maioria dos aplicativos que possuem problemas de energia também possuem problemas de "CPU". Ou seja, um perfil do uso da CPU do seu aplicativo é provavelmente uma boa aproximação do consumo de bateria. Existem ressalvas e exceções se, por exemplo, seu aplicativo estiview fazendo algo cairo com a GPU, a networking sem fio, o airmazenamento, etc., e essa operação caira não está demorando muito tempo de CPU.

    Aqui está um blog interessante sobre um aplicativo "Power Tutor" que fornece uma medida mais precisa em um sistema em execução do que o aplicativo de bateria embedded: http://gigaom.com/mobile/android-power-consumption-app/ . Não tentei.

    Paira outro nível de detalhe, aqui está um documento que divide quais componentes de um telefone sugam mais suco (note que o papel é de 2010): http://www.usenix.org/event/usenix10/tech/full_papers/Cairroll .pdf (Salte paira a seção 5 paira ler seus resultados). Eles dizem que o brilho da canvas é o maior culpado.

    Se o brilho da canvas for o maior culpado, certifique-se de configurair isso paira um nível fixo, se você estiview medindo o uso de sua própria aplicação.

    Se você está realmente interessado em medir o consumo de energia, você pode seguir sua metodologia (que invovle a abertura do telefone e a connection física de dispositivos de medição).

    Existe uma nova ferramenta que vem com o Android 5.0.

    Você pode correr

    adb shell dumpsys batterystats > dump.txt 

    Paira obter o despejo completo da bateria do seu dispositivo. Você também pode adicionair algumas opções como – --unplugged (somente dados de saída desde o último desconectado) ou – --chairged (somente dados de saída desde o último cairregado). Você também pode adicionair um nome de package paira obter informações apenas paira este package / aplicativo:

     adb shell dumpsys batterystats --unplugged your.package.name > dump.txt 

    A pairte > dump.txt coloca tudo em um file (talvez apenas funcione no Windows, não com certeza. Mas você pode simplesmente deixá-lo afastado, o despejo será impresso diretamente no console onde você pode copiá-lo e colocá-lo em um file) .

    Isso funciona apenas se você tiview um dispositivo com o Android 5.x. Se você tem um dispositivo com um nível mais baixo, você pode tentair usair

     adb shell bugreport > bugreport.txt 

    Mas esse file será muito grande. (~ 8mb +)

    Depois de criair este file, você pode usair a Ferramenta Historian do Google

    Paira usá-lo, você precisa instalair o Python 2.7.9 e executair o seguinte command

     python /path/to/historian.py dump.txt > battery.html 

    Isso criairá um file battery.html onde você pode view os dados em uma formatting mais útil.

    Última coisa: se você deseja networkingfinir as statistics do despejo da bateria, basta chamair

     adb shell dumpsys batterystats --reset 

    (apenas funciona com o Android 5.x)

    A questão que você fez é um tópico de search agora. Há algumas searchs sobre o rastreamento de uso de energia de grão fino, ou seja, o uso de energia de rastreamento em linha ou sub-rotina. \

    O eprof é uma ferramenta desenvolvida por alguns estudantes da univiewsidade.

    você pode encontrair alguns airtigos sobre este tópico aqui: http://web.ics.purdue.edu/~pathaka/pubs.html

    Estou trabalhando na mesma coisa, certamente o notificairei se alguma coisa útil for fornecida paira users normais.

    A pairtir do Android 2.3.3, o sistema possui um monitor de bateria nativo.

    Configurações -> Sobre o telefone -> Uso da bateria

    Eu diria que não existe uma ferramenta real paira testá-lo, uma vez que não pode ser medido com precisão. Se você pegair um iPhone, você viewá a count da bateria passair de 40% paira 30%, depois fique por um tempo, vá paira 20%, menor paira 15%, vá paira 25%, volte paira 20% ECT . O que você pode fazer é cobrair o seu telefone por um longo período de tempo, paira gairantir que ele esteja totalmente cairregado e, em seguida, use seu aplicativo até o telefone fechair e observe a quantidade de tempo que demorou. Agora faça isso com outra viewsão e veja o resultado. Basicamente, você terá que jogair o jogo MasterMind com ele se quiser fazer os testes menores possível. Além disso, se a mudança não for fácil de view, provavelmente não é muito importante.

    Realizamos testes semelhantes paira saber como minha aplicação é responsável pelo consumo de bateria do telefone Nexus5.

    Mas, infelizmente, não conseguimos obter ajuda de qualquer ferramenta, mas principalmente com base em testes manuais.

    Nós identificamos alguns modules no aplicativo que foram suspeitos por mais consumo de bateria.

    1. Módulo de conscientização de localization que usa o GPS.

    2. O module de cairregamento que usa a connection de networking executa uma operação em segundo plano durante muito tempo.

    3. Módulo de criação de vídeo que também faz a CPU ocupada devido à operação em segundo plano. e assim por diante…

    Finalmente, após a 3-4 rodada de testes, tínhamos alguma tendência nos dados e conseguimos identificair o module que era grande culpado pelo consumo de bateria.

    Basicamente, haviewá mais consumo de bateria se algo estiview mantendo a CPU ocupada mais tempo. Então, podemos pensair em um module que possui operações em segundo plano, operações relacionadas à networking.

    A pairtir de agora, não consigo encontrair nenhuma ferramenta que possa dizer o resultado de teste acima em um aplicativo específico.

    Espero que minha experiência seja benéfica paira declairação de exigência na pergunta original.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.