SlideShare une entreprise Scribd logo
1  sur  36
Télécharger pour lire hors ligne
Globalcode – Open4education
FISL 14
Escreva sua App Android sem gastar energia
George H. Silva
Android Community Manager
Globalcode – Open4education
FISL 14Agenda
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
Globalcode – Open4education
FISL 14Lembre-se!
Wakelocks use só quando necessário
Pensou em emulador?
HAXM
Pensou em desempenho gráfico
GPA
Globalcode – Open4education
FISL 14Por que economizar?
Experiência do Usuário
Sucesso da sua App
Globalcode – Open4education
FISL 14Quem são os gastões?
Tela
Processador
GPU
I/O
Disco?
Rede
GPS
Sua App
Globalcode – Open4education
FISL 14Tela
Globalcode – Open4education
FISL 14GPS
Globalcode – Open4education
FISL 14Medindo
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
Globalcode – Open4education
FISL 14Medindo 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
Globalcode – Open4education
FISL 14Ciclo de desenvolvimento
Codificando sua aplicação
Debug & Teste
Otimize o desempenhoOtimize o consumo
Globalcode – Open4education
FISL 14Economizando
Por onde começar?
Por quem gasta mais
O que for mais rápido ou fácil de fazer
Globalcode – Open4education
FISL 14Ciclo de Vida
Globalcode – Open4education
FISL 14Wakelock
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
Globalcode – Open4education
FISL 14Como 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
Globalcode – Open4education
FISL 14Wakelock
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
Globalcode – Open4education
FISL 14Permissões necessárias
“Prevent phone from sleeping.”
AndroidManifest.xml:
Globalcode – Open4education
FISL 14Medindo 3
Globalcode – Open4education
FISL 14Wakelock - demo
Globalcode – Open4education
FISL 14Melhore 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
Globalcode – Open4education
FISL 14Como priorizar?
Intel Graphics Performance Analyzer
Conjunto de ferramentas para analize e otimização de
aplicações com forte uso de gráficos
Globalcode – Open4education
FISL 14Conceitos básicos de GPU
Globalcode – Open4education
FISL 14Vértices
Globalcode – Open4education
FISL 14Primitivas
Globalcode – Open4education
FISL 14Fragmentos
Rasterização Processamento de fragmentos
Globalcode – Open4education
FISL 14Pixels
Globalcode – Open4education
FISL 14Demo GPA
Testes “E se …”
Ajudam a identificar gargalos
Globalcode – Open4education
FISL 14Economizando
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
Globalcode – Open4education
FISL 14Me deixe dormir
A bateria do seu dispositivo poderia durar semanas!
Globalcode – Open4education
FISL 14Emulador (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*
Globalcode – Open4education
FISL 14Novidades
Intel System Studio
Beacon Montain
Silvermont
Globalcode – Open4education
FISL 14Beacon 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*
Globalcode – Open4education
FISL 14Silvermont
Novo processador Atom
Saindo de tecnologia 32nm para 22nm
3x mais desempenho ou;
5x menos consumo de energia
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
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
Globalcode – Open4education
FISL 14Referê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
Globalcode – Open4education
FISL 14Contato
George H. Silva
@ghsilva
george.silva@intel.com
http://software.intel.com

Contenu connexe

Similaire à FISL14: Android sem gastarenergia

Implementando uma Device Farm Android
Implementando uma Device Farm AndroidImplementando uma Device Farm Android
Implementando uma Device Farm AndroidThialison Souza
 
Treinamento Android Nooclix
Treinamento Android NooclixTreinamento Android Nooclix
Treinamento Android NooclixIury Teixeira
 
Android: Conheça o Futuro Inevitável
Android: Conheça o Futuro InevitávelAndroid: Conheça o Futuro Inevitável
Android: Conheça o Futuro InevitávelCampus Party Brasil
 
Desenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGapDesenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGapMayron Cachina
 
TDC2018SP | Trilha Mobile - Precisamos falar sobre Visual Studio App Center
TDC2018SP | Trilha Mobile - Precisamos falar sobre Visual Studio App CenterTDC2018SP | Trilha Mobile - Precisamos falar sobre Visual Studio App Center
TDC2018SP | Trilha Mobile - Precisamos falar sobre Visual Studio App Centertdc-globalcode
 
Desenvolvendo Aplicativos com Android
Desenvolvendo Aplicativos com AndroidDesenvolvendo Aplicativos com Android
Desenvolvendo Aplicativos com AndroidMayron Cachina
 
JSF 2.0: Uma Evolução nas Interfaces Web com Java
JSF 2.0: Uma Evolução nas Interfaces Web com JavaJSF 2.0: Uma Evolução nas Interfaces Web com Java
JSF 2.0: Uma Evolução nas Interfaces Web com JavaDr. Spock
 
TDC2016SP - Evoluindo aplicações mobile com o Google VR SDK
TDC2016SP - Evoluindo aplicações mobile com o Google VR SDKTDC2016SP - Evoluindo aplicações mobile com o Google VR SDK
TDC2016SP - Evoluindo aplicações mobile com o Google VR SDKtdc-globalcode
 
TDC2016POA | Trilha Web - Realidade Virtual com WebVR
TDC2016POA | Trilha Web -  Realidade Virtual com WebVRTDC2016POA | Trilha Web -  Realidade Virtual com WebVR
TDC2016POA | Trilha Web - Realidade Virtual com WebVRtdc-globalcode
 
Chega de lendas! JavaFX em Android
Chega de lendas! JavaFX em AndroidChega de lendas! JavaFX em Android
Chega de lendas! JavaFX em AndroidBruno Oliveira
 
Acra - Application Crash Report for Android
Acra - Application Crash Report for AndroidAcra - Application Crash Report for Android
Acra - Application Crash Report for Androidagivis
 
O guia passo_a_passo
O guia passo_a_passoO guia passo_a_passo
O guia passo_a_passoESJEA
 
Introdução ao android - siecomp 2015.1
Introdução ao android - siecomp 2015.1Introdução ao android - siecomp 2015.1
Introdução ao android - siecomp 2015.1Afonso Machado
 
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipster
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipsterGerando aplicações Spring Boot e AngularJS com gerador de código JHipster
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipsterEdlaine Zamora
 

Similaire à FISL14: Android sem gastarenergia (20)

Implementando uma Device Farm Android
Implementando uma Device Farm AndroidImplementando uma Device Farm Android
Implementando uma Device Farm Android
 
Phonegap
PhonegapPhonegap
Phonegap
 
Treinamento Android Nooclix
Treinamento Android NooclixTreinamento Android Nooclix
Treinamento Android Nooclix
 
Android: Conheça o Futuro Inevitável
Android: Conheça o Futuro InevitávelAndroid: Conheça o Futuro Inevitável
Android: Conheça o Futuro Inevitável
 
Desenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGapDesenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGap
 
Aandroid Wear
Aandroid WearAandroid Wear
Aandroid Wear
 
Conhecendo o PhoneGap
Conhecendo o PhoneGapConhecendo o PhoneGap
Conhecendo o PhoneGap
 
PhoneGap
PhoneGapPhoneGap
PhoneGap
 
Apresentação android
Apresentação androidApresentação android
Apresentação android
 
TDC2018SP | Trilha Mobile - Precisamos falar sobre Visual Studio App Center
TDC2018SP | Trilha Mobile - Precisamos falar sobre Visual Studio App CenterTDC2018SP | Trilha Mobile - Precisamos falar sobre Visual Studio App Center
TDC2018SP | Trilha Mobile - Precisamos falar sobre Visual Studio App Center
 
Desenvolvendo Aplicativos com Android
Desenvolvendo Aplicativos com AndroidDesenvolvendo Aplicativos com Android
Desenvolvendo Aplicativos com Android
 
JSF 2.0: Uma Evolução nas Interfaces Web com Java
JSF 2.0: Uma Evolução nas Interfaces Web com JavaJSF 2.0: Uma Evolução nas Interfaces Web com Java
JSF 2.0: Uma Evolução nas Interfaces Web com Java
 
TDC2016SP - Evoluindo aplicações mobile com o Google VR SDK
TDC2016SP - Evoluindo aplicações mobile com o Google VR SDKTDC2016SP - Evoluindo aplicações mobile com o Google VR SDK
TDC2016SP - Evoluindo aplicações mobile com o Google VR SDK
 
TDC2016POA | Trilha Web - Realidade Virtual com WebVR
TDC2016POA | Trilha Web -  Realidade Virtual com WebVRTDC2016POA | Trilha Web -  Realidade Virtual com WebVR
TDC2016POA | Trilha Web - Realidade Virtual com WebVR
 
Chega de lendas! JavaFX em Android
Chega de lendas! JavaFX em AndroidChega de lendas! JavaFX em Android
Chega de lendas! JavaFX em Android
 
Empreendedori$mo com Android
Empreendedori$mo com AndroidEmpreendedori$mo com Android
Empreendedori$mo com Android
 
Acra - Application Crash Report for Android
Acra - Application Crash Report for AndroidAcra - Application Crash Report for Android
Acra - Application Crash Report for Android
 
O guia passo_a_passo
O guia passo_a_passoO guia passo_a_passo
O guia passo_a_passo
 
Introdução ao android - siecomp 2015.1
Introdução ao android - siecomp 2015.1Introdução ao android - siecomp 2015.1
Introdução ao android - siecomp 2015.1
 
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipster
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipsterGerando aplicações Spring Boot e AngularJS com gerador de código JHipster
Gerando aplicações Spring Boot e AngularJS com gerador de código JHipster
 

Plus de Intel Software Brasil

Modernização de código em Xeon® e Xeon Phi™
Modernização de código em Xeon® e Xeon Phi™  Modernização de código em Xeon® e Xeon Phi™
Modernização de código em Xeon® e Xeon Phi™ Intel Software Brasil
 
Escreva sua App sem gastar energia, agora no KitKat
Escreva sua App sem gastar energia, agora no KitKatEscreva sua App sem gastar energia, agora no KitKat
Escreva sua App sem gastar energia, agora no KitKatIntel Software Brasil
 
Desafios do Desenvolvimento Multiplataforma
Desafios do Desenvolvimento MultiplataformaDesafios do Desenvolvimento Multiplataforma
Desafios do Desenvolvimento MultiplataformaIntel Software Brasil
 
Desafios do Desenvolvimento Multi-plataforma
Desafios do Desenvolvimento Multi-plataformaDesafios do Desenvolvimento Multi-plataforma
Desafios do Desenvolvimento Multi-plataformaIntel Software Brasil
 
Getting the maximum performance in distributed clusters Intel Cluster Studio XE
Getting the maximum performance in distributed clusters Intel Cluster Studio XEGetting the maximum performance in distributed clusters Intel Cluster Studio XE
Getting the maximum performance in distributed clusters Intel Cluster Studio XEIntel Software Brasil
 
Methods and practices to analyze the performance of your application with Int...
Methods and practices to analyze the performance of your application with Int...Methods and practices to analyze the performance of your application with Int...
Methods and practices to analyze the performance of your application with Int...Intel Software Brasil
 
Principais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralelaPrincipais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralelaIntel Software Brasil
 
Principais conceitos e técnicas em vetorização
Principais conceitos e técnicas em vetorizaçãoPrincipais conceitos e técnicas em vetorização
Principais conceitos e técnicas em vetorizaçãoIntel Software Brasil
 
Intel Technologies for High Performance Computing
Intel Technologies for High Performance ComputingIntel Technologies for High Performance Computing
Intel Technologies for High Performance ComputingIntel Software Brasil
 
Benchmarking para sistemas de alto desempenho
Benchmarking para sistemas de alto desempenhoBenchmarking para sistemas de alto desempenho
Benchmarking para sistemas de alto desempenhoIntel Software Brasil
 
Yocto no 1 IoT Day da Telefonica/Vivo
Yocto no 1 IoT Day da Telefonica/VivoYocto no 1 IoT Day da Telefonica/Vivo
Yocto no 1 IoT Day da Telefonica/VivoIntel Software Brasil
 
Otávio Salvador - Yocto project reduzindo -time to market- do seu próximo pr...
Otávio Salvador - Yocto project  reduzindo -time to market- do seu próximo pr...Otávio Salvador - Yocto project  reduzindo -time to market- do seu próximo pr...
Otávio Salvador - Yocto project reduzindo -time to market- do seu próximo pr...Intel Software Brasil
 
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5Intel Software Brasil
 

Plus de Intel Software Brasil (20)

Modernização de código em Xeon® e Xeon Phi™
Modernização de código em Xeon® e Xeon Phi™  Modernização de código em Xeon® e Xeon Phi™
Modernização de código em Xeon® e Xeon Phi™
 
Escreva sua App sem gastar energia, agora no KitKat
Escreva sua App sem gastar energia, agora no KitKatEscreva sua App sem gastar energia, agora no KitKat
Escreva sua App sem gastar energia, agora no KitKat
 
Desafios do Desenvolvimento Multiplataforma
Desafios do Desenvolvimento MultiplataformaDesafios do Desenvolvimento Multiplataforma
Desafios do Desenvolvimento Multiplataforma
 
Desafios do Desenvolvimento Multi-plataforma
Desafios do Desenvolvimento Multi-plataformaDesafios do Desenvolvimento Multi-plataforma
Desafios do Desenvolvimento Multi-plataforma
 
Yocto - 7 masters
Yocto - 7 mastersYocto - 7 masters
Yocto - 7 masters
 
Getting the maximum performance in distributed clusters Intel Cluster Studio XE
Getting the maximum performance in distributed clusters Intel Cluster Studio XEGetting the maximum performance in distributed clusters Intel Cluster Studio XE
Getting the maximum performance in distributed clusters Intel Cluster Studio XE
 
Intel tools to optimize HPC systems
Intel tools to optimize HPC systemsIntel tools to optimize HPC systems
Intel tools to optimize HPC systems
 
Methods and practices to analyze the performance of your application with Int...
Methods and practices to analyze the performance of your application with Int...Methods and practices to analyze the performance of your application with Int...
Methods and practices to analyze the performance of your application with Int...
 
Principais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralelaPrincipais conceitos técnicas e modelos de programação paralela
Principais conceitos técnicas e modelos de programação paralela
 
Principais conceitos e técnicas em vetorização
Principais conceitos e técnicas em vetorizaçãoPrincipais conceitos e técnicas em vetorização
Principais conceitos e técnicas em vetorização
 
Notes on NUMA architecture
Notes on NUMA architectureNotes on NUMA architecture
Notes on NUMA architecture
 
Intel Technologies for High Performance Computing
Intel Technologies for High Performance ComputingIntel Technologies for High Performance Computing
Intel Technologies for High Performance Computing
 
Benchmarking para sistemas de alto desempenho
Benchmarking para sistemas de alto desempenhoBenchmarking para sistemas de alto desempenho
Benchmarking para sistemas de alto desempenho
 
Yocto no 1 IoT Day da Telefonica/Vivo
Yocto no 1 IoT Day da Telefonica/VivoYocto no 1 IoT Day da Telefonica/Vivo
Yocto no 1 IoT Day da Telefonica/Vivo
 
Html5 fisl15
Html5 fisl15Html5 fisl15
Html5 fisl15
 
IoT FISL15
IoT FISL15IoT FISL15
IoT FISL15
 
IoT TDC Floripa 2014
IoT TDC Floripa 2014IoT TDC Floripa 2014
IoT TDC Floripa 2014
 
Otávio Salvador - Yocto project reduzindo -time to market- do seu próximo pr...
Otávio Salvador - Yocto project  reduzindo -time to market- do seu próximo pr...Otávio Salvador - Yocto project  reduzindo -time to market- do seu próximo pr...
Otávio Salvador - Yocto project reduzindo -time to market- do seu próximo pr...
 
Html5 tdc floripa_2014
Html5 tdc floripa_2014Html5 tdc floripa_2014
Html5 tdc floripa_2014
 
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5
Desenvolvimento e análise de performance de jogos Android com Coco2d-HTML5
 

FISL14: Android sem gastarenergia

  • 1. Globalcode – Open4education FISL 14 Escreva sua App Android sem gastar energia George H. Silva Android Community Manager
  • 2. Globalcode – Open4education FISL 14Agenda 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. Globalcode – Open4education FISL 14Lembre-se! Wakelocks use só quando necessário Pensou em emulador? HAXM Pensou em desempenho gráfico GPA
  • 4. Globalcode – Open4education FISL 14Por que economizar? Experiência do Usuário Sucesso da sua App
  • 5. Globalcode – Open4education FISL 14Quem são os gastões? Tela Processador GPU I/O Disco? Rede GPS Sua App
  • 8. Globalcode – Open4education FISL 14Medindo 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
  • 9. Globalcode – Open4education FISL 14Medindo 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. Globalcode – Open4education FISL 14Ciclo de desenvolvimento Codificando sua aplicação Debug & Teste Otimize o desempenhoOtimize o consumo
  • 11. Globalcode – Open4education FISL 14Economizando Por onde começar? Por quem gasta mais O que for mais rápido ou fácil de fazer
  • 13. Globalcode – Open4education FISL 14Wakelock 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
  • 14. Globalcode – Open4education FISL 14Como 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
  • 15. Globalcode – Open4education FISL 14Wakelock 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
  • 16. Globalcode – Open4education FISL 14Permissões necessárias “Prevent phone from sleeping.” AndroidManifest.xml:
  • 19. Globalcode – Open4education FISL 14Melhore 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. Globalcode – Open4education FISL 14Como priorizar? Intel Graphics Performance Analyzer Conjunto de ferramentas para analize e otimização de aplicações com forte uso de gráficos
  • 21. Globalcode – Open4education FISL 14Conceitos básicos de GPU
  • 24. Globalcode – Open4education FISL 14Fragmentos Rasterização Processamento de fragmentos
  • 26. Globalcode – Open4education FISL 14Demo GPA Testes “E se …” Ajudam a identificar gargalos
  • 27. Globalcode – Open4education FISL 14Economizando 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. Globalcode – Open4education FISL 14Me deixe dormir A bateria do seu dispositivo poderia durar semanas!
  • 29. Globalcode – Open4education FISL 14Emulador (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*
  • 30. Globalcode – Open4education FISL 14Novidades Intel System Studio Beacon Montain Silvermont
  • 31. Globalcode – Open4education FISL 14Beacon 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*
  • 32. Globalcode – Open4education FISL 14Silvermont Novo processador Atom Saindo de tecnologia 32nm para 22nm 3x mais desempenho ou; 5x menos consumo de energia
  • 33. 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
  • 34. 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
  • 35. Globalcode – Open4education FISL 14Referê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
  • 36. Globalcode – Open4education FISL 14Contato George H. Silva @ghsilva george.silva@intel.com http://software.intel.com