TDC-SP: Android sem gastar energia

  • Published on
    29-Jun-2015

  • View
    700

  • Download
    2

DESCRIPTION

As restries das plataformas mveis, a concorrncia e a facilidade dos usurios em recomendar ou criticar as aplicaes tornaram o desafio dos desenvolvedores muito maior nas lojas de aplicativos. Alm das preocupaes com arquitetura e um bom plano de testes, as restries de bateria e desempenho menor que as plataformas tradicionas exigem mais criatividade para encontrar o melhor balano entre responsividade e consumo de energia. Nosso foco ser apresentar um guia prtico de como criar software eficiente no uso de energia, discutir quando precisamos lidar com o balano entre resposta ao usurio e uso de energia visitando as principais ferramentas que auxiliam o desenvolvedor a melhorar o uso de energia e a responsividade de sua aplicao. Venha conhecer o trabalho que a Intel Software est fazendo no ecossitema Android que beneficia o desenvolvimento para todos dispositivos.

Transcript

  • 1. Globalcode Open4education Escreva sua App Android sem gastar energia George H. Silva Android Community Manager

2. Globalcode Open4education Agenda Por que economizar? Quem so os gastes Hardware Wakelocks Medindo Consumo de Energia Identificando consumo da GPU Economizando Android Intel Inside O que no muda Emulador Novidades Concluso 3. Globalcode Open4education Lembre-se! Wakelocks Pensou em emulador? HAXM Pensou em desempenho grfico GPA 4. Globalcode Open4education Por que economizar? Experincia do Usurio Sucesso da sua App 5. Globalcode Open4education Quem so os gastes? Tela Processador GPU I/O Disco? Rede GPS Sua App 6. Globalcode Open4education Tela 7. Globalcode Open4education GPS 8. Globalcode Open4education Medindo Defina uma metodologia para sua App Dicas: Use as mesmas pr condies Entre em modo avio (operadora) Deixe o brilho da tela no mnimo Use sempre o mesmo dispositivo Tenha o mnimo de Apps instaladas No use o adb por conexo USB tcp/ip connection (precise de acesso root ) 9. Globalcode Open4education Medindo 2 /sys/class/power_supply/battery/uevent datafile Informaes disponveis 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. Globalcode Open4education Medindo 3 11. Globalcode Open4education Ciclo de desenvolvimento Codificando sua aplicao Debug & Teste Otimize o desempenhoOtimize o consumo 12. Globalcode Open4education Economizando Por onde comear? Por quem gasta mais O que for mais rpido ou fcil de fazer 13. Globalcode Open4education Ciclo de Vida 14. Globalcode Open4education Wakelock Android assume que se a tela no est ligada, a CPU tambm no precisa estar Wakelock uma brecha legal dentro da poltica agressiva de economia de energia 15. Globalcode Open4education Como so usados Aplicao Ao feita Servio que pegou Wakelock Comportamento Todas Toque em qualquer UI Widget (Boto ou ListView, etc) PowerManagerService Solicita e libera o lock aps 5 segundos Maps / Navegao Lanar a App de Maps ou definer direes para navegao gps-lock Mantm o lock enquanto usa GPS YouTube Assistir um vdeo PowerManagerService Wakelock mantido durante o perodo em que o video reproduzido Music Player Tocar uma musica PowerManagerService Wakelock mantido durante o perodo em que a msica toca 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 Descrio 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 aps a liberao do wakelock 17. Globalcode Open4education Permisses necessrias Prevent phone from sleeping. AndroidManifest.xml: 18. Globalcode Open4education Wakelock - demo 19. Globalcode Open4education Melhore seus Grficos Assim como seu processador, sua unidade grfica consome energia Estratgias para economia: Simplifique as texturas Diminua o uso de transparncias Diminua o nmero de objetos na tela Diminua o FPS 20. Globalcode Open4education Como priorizar? Intel Graphics Performance Analyzer Conjunto de ferramentas para analize e otimizao de aplicaes com forte uso de grficos 21. Globalcode Open4education Conceitos bsicos de GPU 22. Globalcode Open4education Vrtices 23. Globalcode Open4education Primitivas 24. Globalcode Open4education Fragmentos Rasterizao Processamento de fragmentos 25. Globalcode Open4education Pixels 26. Globalcode Open4education Demo GPA Testes E se Ajudam a identificar gargalos 27. Globalcode Open4education Economizando Use I/O em batches Principalmente comunicao em rede No use Wakelock Confie no Android, ele legal Use o wakelock mais apropriado Nunca segure o wakelock sem necessidade Use broadcaster receivers s quando necessrio Otimize sua aplicao grfica com GPA Fundo de tela escuro 28. Globalcode Open4education Me deixe dormir A bateria do seu dispositivo poderia durar semanas! 29. Globalcode Open4education x86: O que no muda Aplicaes Java Ferramentas fornecidas pelo Google Trabalhamos muito para voc focar na sua App e no no processador 30. Globalcode Open4education Emulador (HAXM) Android SDK manager j contm imagens Intel x86 Emulao muito mais rpida com a tecnologia Intel VT-x: HAXM para Mac e Windows KVM para Linux* 31. Globalcode Open4education Novidades Intel System Studio Beacon Montain Silvermont 32. Globalcode Open4education Intel System Studio 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. Globalcode Open4education Silvermont Novo processador Atom Saindo de tecnologia 32nm para 22nm 3x mais desempenho ou; 5x menos consumo de energia 35. Parceiros de Software Desenvolvedores de Software Comunidade Global para Desenvolvimento de Software e Negcios Documentao Tcnica, Guias e Forums de apoio Tendncias e Idias Recursos de Marketing e Vendas software.intel.com Seu principal recurso para desenvolvimento de Software e Negcios 36. Contedo Online em Portugus para dar suporte ao Desenvolvedor Quatro Novas Comunidades de Software locais Anunciando Melhorias no Suporte ao Desenvolvedor Brasileiro Comunidades Intel Software Network 37. Globalcode Open4education Referncias 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. Globalcode Open4education Contato George H. Silva @ghsilva george.silva@intel.com http://software.intel.com