Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Globalcode – Open4education
Escreva sua App Android sem gastar energia
George H. Silva
Android Community Manager
Globalcode – Open4education
Agenda
Por que economizar?
Quem são os gastões
Hardware
Wakelocks
Medindo
Consumo de Energia
I...
Globalcode – Open4education
Lembre-se!
Wakelocks
Pensou em emulador?
HAXM
Pensou em desempenho gráfico
GPA
Globalcode – Open4education
Por que economizar?
Experiência do Usuário
Sucesso da sua App
Globalcode – Open4education
Quem são os gastões?
Tela
Processador
GPU
I/O
Disco?
Rede
GPS
Sua App
Globalcode – Open4education
Tela
Globalcode – Open4education
GPS
Globalcode – Open4education
Medindo
Defina uma metodologia para sua App
Dicas:
Use as mesmas pré condições
Entre em modo a...
Globalcode – Open4education
Medindo 2
/sys/class/power_supply/battery/uevent datafile
Informações disponíveis
POWER_SUPPLY...
Globalcode – Open4education
Medindo 3
Globalcode – Open4education
Ciclo de desenvolvimento
Codificando sua aplicação
Debug & Teste
Otimize o desempenhoOtimize o...
Globalcode – Open4education
Economizando
Por onde começar?
Por quem gasta mais
O que for mais rápido ou fácil de fazer
Globalcode – Open4education
Ciclo de Vida
Globalcode – Open4education
Wakelock
Android assume que se a tela não está ligada, a
CPU também não precisa estar
Wakelock...
Globalcode – Open4education
Como são usados
Aplicação Ação feita Serviço que pegou
Wakelock
Comportamento
Todas Toque em q...
Globalcode – Open4education
Wakelock
Tipos CPU Tela Teclado
PARTIAL_WAKE_LOCK On Off Off
SCREEN_DIM_WAKE_LOCK On Dim Off
S...
Globalcode – Open4education
Permissões necessárias
“Prevent phone from sleeping.”
AndroidManifest.xml:
Globalcode – Open4education
Wakelock - demo
Globalcode – Open4education
Melhore seus Gráficos
Assim como seu processador, sua unidade gráfica
consome energia
Estratég...
Globalcode – Open4education
Como priorizar?
Intel Graphics Performance Analyzer
Conjunto de ferramentas para analize e oti...
Globalcode – Open4education
Conceitos básicos de GPU
Globalcode – Open4education
Vértices
Globalcode – Open4education
Primitivas
Globalcode – Open4education
Fragmentos
Rasterização Processamento de fragmentos
Globalcode – Open4education
Pixels
Globalcode – Open4education
Demo GPA
Testes “E se …”
Ajudam a identificar gargalos
Globalcode – Open4education
Economizando
Use I/O em batches
Principalmente comunicação em rede
Não use Wakelock
Confie no ...
Globalcode – Open4education
Me deixe dormir
A bateria do seu dispositivo poderia durar semanas!
Globalcode – Open4education
x86: O que não muda
Aplicações Java
Ferramentas fornecidas pelo Google
Trabalhamos muito para ...
Globalcode – Open4education
Emulador (HAXM)
Android SDK manager já contém
imagens Intel x86
Emulação muito mais rápida
com...
Globalcode – Open4education
Novidades
Intel System Studio
Beacon Montain
Silvermont
Globalcode – Open4education
Intel System Studio
Globalcode – Open4education
Beacon Montain
Ambiente de Desenvolvimento da Intel para te
ajuda a desenvoler Apps Android
Fe...
Globalcode – Open4education
Silvermont
Novo processador Atom
Saindo de tecnologia 32nm para 22nm
3x mais desempenho ou;
5x...
Parceiros de Software
Desenvolvedores
de Software
Comunidade Global
para Desenvolvimento
de Software e Negócios
Documentaç...
Conteúdo Online
em Português
para dar suporte
ao Desenvolvedor
Quatro Novas
Comunidades
de Software
locais
Anunciando Melh...
Globalcode – Open4education
Referências
http://software.intel.com/articles/wakelocks-for-android
http://developer.android....
Globalcode – Open4education
Contato
George H. Silva
@ghsilva
george.silva@intel.com
http://software.intel.com
Nächste SlideShare
Wird geladen in …5
×

TDC-SP: Android sem gastar energia

1.399 Aufrufe

Veröffentlicht am

As restrições das plataformas móveis, a concorrência e a facilidade dos usuários em recomendar ou criticar as aplicações tornaram o desafio dos desenvolvedores muito maior nas lojas de aplicativos. Além das preocupações com arquitetura e um bom plano de testes, as restrições de bateria e desempenho menor que as plataformas tradicionas exigem mais criatividade para encontrar o melhor balanço entre responsividade e consumo de energia. Nosso foco será apresentar um guia prático de como criar software eficiente no uso de energia, discutir quando precisamos lidar com o balanço entre resposta ao usuário e uso de energia visitando as principais ferramentas que auxiliam o desenvolvedor a melhorar o uso de energia e a responsividade de sua aplicação. Venha conhecer o trabalho que a Intel Software está fazendo no ecossitema Android que beneficia o desenvolvimento para todos dispositivos.

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

TDC-SP: Android sem gastar energia

  1. 1. Globalcode – Open4education Escreva sua App Android sem gastar energia George H. Silva Android Community Manager
  2. 2. Globalcode – Open4education Agenda Por que economizar? Quem são os gastões Hardware Wakelocks Medindo Consumo de Energia Identificando consumo da GPU Economizando Android Intel Inside O que não muda Emulador Novidades Conclusão
  3. 3. Globalcode – Open4education Lembre-se! Wakelocks Pensou em emulador? HAXM Pensou em desempenho gráfico GPA
  4. 4. Globalcode – Open4education Por que economizar? Experiência do Usuário Sucesso da sua App
  5. 5. Globalcode – Open4education Quem são os gastões? Tela Processador GPU I/O Disco? Rede GPS Sua App
  6. 6. Globalcode – Open4education Tela
  7. 7. Globalcode – Open4education GPS
  8. 8. Globalcode – Open4education Medindo Defina uma metodologia para sua App Dicas: Use as mesmas pré condições Entre em modo avião (operadora) Deixe o brilho da tela no mínimo Use sempre o mesmo dispositivo Tenha o mínimo de Apps instaladas Não use o adb por conexão USB tcp/ip connection (precise de acesso root )
  9. 9. Globalcode – Open4education Medindo 2 /sys/class/power_supply/battery/uevent datafile Informações disponíveis POWER_SUPPLY_NAME “usb”, “ac_charger” POWER_SUPPLY_STATUS 0 / 1 POWER_SUPPLY_VOLTAGE_NOW uV / mV POWER_SUPPLY_CURRENT_NOW uA POWER_SUPPLY_CHARGE_FULL Watt-Hr POWER_SUPPLY_CHARGE_NOW Watt-Hr
  10. 10. Globalcode – Open4education Medindo 3
  11. 11. Globalcode – Open4education Ciclo de desenvolvimento Codificando sua aplicação Debug & Teste Otimize o desempenhoOtimize o consumo
  12. 12. Globalcode – Open4education Economizando Por onde começar? Por quem gasta mais O que for mais rápido ou fácil de fazer
  13. 13. Globalcode – Open4education Ciclo de Vida
  14. 14. Globalcode – Open4education Wakelock Android assume que se a tela não está ligada, a CPU também não precisa estar Wakelock é uma “brecha legal” dentro da política agressiva de economia de energia
  15. 15. Globalcode – Open4education Como são usados Aplicação Ação feita Serviço que pegou Wakelock Comportamento Todas Toque em qualquer UI Widget (Botão ou ListView, etc) PowerManagerService Solicita e libera o lock após 5 segundos Maps / Navegação Lançar a App de Maps ou definer direções para navegação gps-lock Mantém o lock enquanto usa GPS YouTube Assistir à um vídeo PowerManagerService Wakelock mantido durante o período em que o video é reproduzido Music Player Tocar uma musica PowerManagerService Wakelock mantido durante o período em que a música toca
  16. 16. Globalcode – Open4education Wakelock Tipos CPU Tela Teclado PARTIAL_WAKE_LOCK On Off Off SCREEN_DIM_WAKE_LOCK On Dim Off SCREEN_BRIGHT_WAKE_LOCK On Bright Off FULL_WAKE_LOCK On Bright Bright Flags Descrição ACQUIRE_CAUSES_WAKEUP Force a tela e teclado a serem ligados assim que o wakelock for solicitado ON_AFTER_RELEASE Reinicia o timeout para que a tela seja desligada após a liberação do wakelock
  17. 17. Globalcode – Open4education Permissões necessárias “Prevent phone from sleeping.” AndroidManifest.xml:
  18. 18. Globalcode – Open4education Wakelock - demo
  19. 19. Globalcode – Open4education Melhore seus Gráficos Assim como seu processador, sua unidade gráfica consome energia Estratégias para economia: Simplifique as texturas Diminua o uso de transparências Diminua o número de objetos na tela Diminua o FPS
  20. 20. Globalcode – Open4education Como priorizar? Intel Graphics Performance Analyzer Conjunto de ferramentas para analize e otimização de aplicações com forte uso de gráficos
  21. 21. Globalcode – Open4education Conceitos básicos de GPU
  22. 22. Globalcode – Open4education Vértices
  23. 23. Globalcode – Open4education Primitivas
  24. 24. Globalcode – Open4education Fragmentos Rasterização Processamento de fragmentos
  25. 25. Globalcode – Open4education Pixels
  26. 26. Globalcode – Open4education Demo GPA Testes “E se …” Ajudam a identificar gargalos
  27. 27. Globalcode – Open4education Economizando Use I/O em batches Principalmente comunicação em rede Não use Wakelock Confie no Android, ele é legal Use o wakelock mais apropriado Nunca segure o wakelock sem necessidade Use broadcaster receivers só quando necessário Otimize sua aplicação gráfica com GPA Fundo de tela escuro
  28. 28. Globalcode – Open4education Me deixe dormir A bateria do seu dispositivo poderia durar semanas!
  29. 29. Globalcode – Open4education x86: O que não muda Aplicações Java Ferramentas fornecidas pelo Google Trabalhamos muito para você focar na sua App e não no processador
  30. 30. Globalcode – Open4education Emulador (HAXM) Android SDK manager já contém imagens Intel x86 Emulação muito mais rápida com a tecnologia Intel® VT-x: • HAXM para Mac e Windows • KVM para Linux*
  31. 31. Globalcode – Open4education Novidades Intel System Studio Beacon Montain Silvermont
  32. 32. Globalcode – Open4education Intel System Studio
  33. 33. Globalcode – Open4education Beacon Montain Ambiente de Desenvolvimento da Intel para te ajuda a desenvoler Apps Android Ferramentas Intel: •Intel® HAXM •Intel® GPA System Analyzer •Intel® Threading Building Blocks •Intel® Software Manager •Intel® Integrated Performance Primitives Preview Outras feramentas: •Google Android SDK (com ADT) •Android NDK •Eclipse •Android Design •Cygwin*
  34. 34. Globalcode – Open4education Silvermont Novo processador Atom Saindo de tecnologia 32nm para 22nm 3x mais desempenho ou; 5x menos consumo de energia
  35. 35. Parceiros de Software Desenvolvedores de Software Comunidade Global para Desenvolvimento de Software e Negócios Documentação Técnica, Guias e Forums de apoio Tendências e Idéias Recursos de Marketing e Vendas software.intel.com Seu principal recurso para desenvolvimento de Software e Negócios
  36. 36. Conteúdo Online em Português para dar suporte ao Desenvolvedor Quatro Novas Comunidades de Software locais Anunciando Melhorias no Suporte ao Desenvolvedor Brasileiro Comunidades Intel Software Network
  37. 37. Globalcode – Open4education Referências http://software.intel.com/articles/wakelocks-for-android http://developer.android.com/training/monitoring-device-state/index.html http://software.intel.com/articles/android-power-measurement- techniques http://developer.android.com/training/monitoring-device-state/index.html http://software.intel.com/en-us/articles/developing-power-aware- applications-on-android http://software.intel.com/en-us/articles/intel-hardware-accelerated- execution-manager/ http://software.intel.com/en-us/articles/installing-the-intel-atom-tm- android-x86-emulator-image-add-on-from-the-android-sdk-manager/ http://software.intel.com/en-us/vcsource/tools/beaconmountain
  38. 38. Globalcode – Open4education Contato George H. Silva @ghsilva george.silva@intel.com http://software.intel.com

×