Aborda assuntos como o mercado mobile e os principais componentes do framework:
- Views
- Content Providers
- Resource Manager
- Notification Manager
- Activity Manager
entre outros relacionados a Android e mobile.
A palestra foi patrocinada pela Kees Informática.
27. COM O ANDROID
2011 2010
• 310 modelos • 60 modelos
• 36 fabricantes • 21 fabricantes
• 215 operadoras • 59 operadoras
• 112 países • 48 países
http://googleblog.blogspot.com/2011/05/android-momentum-mobile-and-more-at.html
28. ATIVAÇÕES
(NOVOS APARELHOS USADOS PELA 1A VEZ)
2011 2010
• 500.000 / dia • 100.000 / dia
+100.000.000 dispositivos no mundo atualmente
http://googleblog.blogspot.com/2011/05/android-momentum-mobile-and-more-at.html
29. ATIVAÇÕES
(NOVOS APARELHOS USADOS PELA 1A VEZ)
Google’s Android Runs 50% of New Smartphones,
Nielsen Says
http://www.businessweek.com/news/2011-04-26/google-s-android-runs-50-of-new-smartphones-nielsen-says.html
30. ANDROID MARKET
Mai / 2011 Ago / 2010
• 200.000 aplicativos • 80.000 aplicativos
http://googleblog.blogspot.com/2011/05/android-momentum-mobile-and-more-at.html
31. MERCADO
Aquecido!
“Mobile App Talent Pool is Shallow” - The Wall Street Journal
http://online.wsj.com/article/SB10001424052748704547604576263200170918660.html?mod=WSJ_Tech_LEFTTopNews
32. Steve Jobs: “TweetDeck reported it was a
daunting challenge to contend with more
than 100 different versions of Android
software on 244 different handsets.”
33. Steve Jobs: “TweetDeck reported it was a
daunting challenge to contend with more
than 100 different versions of Android
software on 244 different handsets.”
34. Steve Jobs: “TweetDeck reported it was a
daunting challenge to contend with more
than 100 different versions of Android
software on 244 different handsets.”
40. GERENCIAMENTO DE
MEMÓRIA
•OSO fecha e restaura aplicativos automaticamente, conforme
necessário
•O desenvolvedor não precisa não deve finalizar manualmente
os aplicativos
53. ANDROID OPEN ACCESSORY
Periféricos USB <=> SO e Apps
Compatível com Arduino
Gingerbread (2.3.4) e Honeycomb (3.1)
http://www.youtube.com/watch?v=OxzucwjFEEs
54. ANDROID@HOME
Rede de periféricos.
Encontrar, conectar e se comunicar com outros dispositivos na
sua casa, como equipamento sonoro, luzes, etc
http://www.youtube.com/watch?v=OxzucwjFEEs
62. ICE CREAM SANDWICH
API de reconhecimento de faces
http://www.youtube.com/watch?v=OxzucwjFEEs
63. MATERIAL DE ESTUDO
• http://developer.android.com
• Google Groups
• android-developers (oficial)
• androidbrasil
• androidbrasil-dev
• http://stackoverflow.com/questions/tagged/android
No Google I/O do ano passado, Vic Gundotra disse que questionou o Android quando chegou no Google.\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
O consumidor escolhe seu aparelho preferido na sua operadora preferida\n
Nessa mesma ocasi&#xE3;o, Andy Rubin disse que se o Android n&#xE3;o existir...\n\n... dos consumidores\n
\n
E o Android conseguiu impedir que isso acontecesse.\nHoje, o Android est&#xE1; em...\n\n
\n
Nos EUA, nos 6 meses que antecederam Abril/2011\n
\n
\n
Apple&#x2019;s earnings call\ndesespero\n
Apple&#x2019;s earnings call\ndesespero\n
2.2: JIT, Push (explicar), salvar aplicativos no cart&#xE3;o de mem&#xF3;ria\n2.3: Concurrent Garbage Collection\n Diversas melhorias para NDK(C/C++): acesso direto a resources, file system, etc\n\n3.0: para tablets, veremos mais a seguir\n2.3.4, 3.1: Perif&#xE9;ricos: camera, mouse, teclado, joystick. Android Host\n Android Open Accessory: veremos mais adiante\n\nTodas as vers&#xF5;es tiveram avan&#xE7;os significativos em performance: Dalvik amadurecendo.\n
Antes de entrar na parte t&#xE9;cnica\nTask killer: bloqueado no 2.2\nFragmenta&#xE7;&#xE3;o\n*Todos* os grandes SOs tem fragmenta&#xE7;&#xE3;o.\nWindows XP foi lan&#xE7;ado h&#xE1; 10 anos atr&#xE1;s, j&#xE1; foram lan&#xE7;adas 2 vers&#xF5;es mais novas, e mesmo assim cada um de voc&#xEA;s ainda conhece algu&#xE9;m que usa o Windows XP.\nApesar de existir, a fragmenta&#xE7;&#xE3;o n&#xE3;o torna a vida do desenvolvedor absurdamente mais dificil, como a m&#xED;dia &#x201C;especializada&#x201D; gosta de dizer por a&#xED;.\nQuando se come&#xE7;a um novo aplicativo, deve se escolher a vers&#xE3;o mais antiga na configura&#xE7;&#xE3;o do seu projeto e aument&#xE1;-la s&#xF3; se for necess&#xE1;rio. Isso garante que o maior n&#xFA;mero de usu&#xE1;rios poss&#xED;vel vai poder usar seu aplicativo. E mesmo que voc&#xEA; precise de um recurso que s&#xF3; existe no Android 2.2, ainda assim &#xE9; poss&#xED;vel oferecer o aplicativo para vers&#xF5;es anteriores do Android. Para isso, basta verificar em tempo de execu&#xE7;&#xE3;o se o ambiente oferece a funcionalidade que voc&#xEA; precisa e, caso n&#xE3;o ofere&#xE7;a, desabilitar/esconder a funcionalidade.\n
\n
\n
Ter aplicativos na mem&#xF3;ria n&#xE3;o deixa o aparelho lento e nem gasta mais bateria.\nTirar aplicativos da mem&#xF3;ria faz eles demorarem pra abrir na pr&#xF3;xima utiliza&#xE7;&#xE3;o e, por causa disso, gasta mais bateria.\n
Na primeira utiliza&#xE7;&#xE3;o de um aplicativo, o SO o carrega na mem&#xF3;ria e antes, caso n&#xE3;o tenha mem&#xF3;ria dispon&#xED;vel, o SO finaliza o aplicativo que est&#xE1; mais tempo sem ser utilizado\n\nDesenv. n&#xE3;o devem finalizar manualmente aplicativos. Nem os seus, nem os de terceiros.\nFinalizar aplicativos manualmente, al&#xE9;m de deixar o aparelho mais lento e gastar mais bateria, pode fazer os aplicativos finalizados ter comportamento inexperado.\n
Views: componentes visuais. Exibem texto, imagens, listas, grids, bot&#xF5;es, etc\nContent Providers: &#xE9; o que permite que um aplicativo troque dados com outro\nResource Manager: carrega imagens, layouts, entr eoutras coisas. Veremos mais a seguir\nNotification manager: exibe alertas na barra de status\nActivity Manager: gerencia o cliclo de vida dos aplicativos\n
Recebem eventos, por exemplo do touchscreen e teclas f&#xED;sicas, como volume ou teclado\nTemas e estilos: carregam informa&#xE7;&#xF5;es de estilo e se desenham de acordo com elas\nLayouts: s&#xE3;o views especiais que calculam a posi&#xE7;&#xE3;o e o tamanho das views filhas\n
Frame: mais simples. views s&#xE3;o desenhadas uma sobre a outra\nLinear: posiciona as views uma em cima ou ao lado da outra\nRelative: a posi&#xE7;&#xE3;o das views &#xE9; relativa ao layout ou as views irm&#xE3;s\nTable: posiciona as views em linhas e colunas\n\nLayoutParams: &#xE9; poss&#xED;vel influenciar no posicionamento. ex.: width, height, margin, weight, gravity\n
SO: dados de contatos, m&#xFA;sica, v&#xED;deos e fotos, hist&#xF3;rido de liga&#xE7;&#xF5;es, configura&#xE7;&#xF5;es de Bluetooth, Wi-Fi, conex&#xE3;o de dados, etc.\n\nquery() retorna um Cursor\n
&#xC9; inteligente: seleciona imagens, valores, layouts, cores, estilos, entre outras coisas, de acordo com o estado em que o aparelho se encontra.\nLeva em considera&#xE7;&#xE3;o coisas como o tamanho, resolu&#xE7;&#xE3;o e densidade da tela, idioma, regi&#xE3;o, orienta&#xE7;&#xE3;o da tela (horizontal/vertical), noite ou dia, vers&#xE3;o do Android, entre outros...\n
Equivalente a um ViewController do iOS.\nConfigura os callbacks de eventos das views (onClick de bot&#xE3;o)\n\nRecebe alguns eventos: bot&#xF5;es f&#xED;sicos(voltar, menu), mudan&#xE7;as no aparelho(orienta&#xE7;&#xE3;o da tela)\n
outro tipo de evento: os do ciclo de vida da Activity.\nS&#xE3;o chamados quando a Activity &#xE9; criada, passa para primeiro plano, outra Activity &#xE9; aberta na frente dela, finalizada, etc\n\n
Android tem um modelo r&#xED;gido de seguran&#xE7;a.\n\nPara ter acesso a dados sens&#xED;veis, sensores e outros, o aplicativo deve especificar no seu manifesto o que ir&#xE1; acessar. Caso n&#xE3;o o fa&#xE7;a, ter&#xE1; acesso negado durante sua execu&#xE7;&#xE3;o\n\nLista de contatos, e-mails, outras contas, cadastro de pontos de acesso, etc\n
\n
\n
compatibility package\n
\n
vers&#xF5;es atuais do Android\nArduino: muita coisa pronta para reutilizar\nEquivalente ao Made For iPod (MFi) da Apple\nN&#xE3;o precisa de aprova&#xE7;&#xE3;o do Google, n&#xE3;o precisa pagar pro Google\n\ncomunica&#xE7;&#xE3;o com dispositivos acoplados, como instrumentos musicais, equipamento de gin&#xE1;stica, via USB. O acess&#xF3;rio &#xE9; o Host\n
Luzes, despertadores, termostatos, lavadoras de lou&#xE7;a, etc\n
- Integra a televis&#xE3;o com a nuvem\n- Servi&#xE7;os de conte&#xFA;do sob demanda, como Netflix, Youtube, rec&#xE9;m anunciado aluguel de filmes no Android Market\n- Traz pra TV os recursos do Android, como busca por voz\n\n- Central multim&#xED;dia (PS3, XBOX 360, Windows Media Center)\n
Uma das coisas que mais chamam minha aten&#xE7;&#xE3;o &#xE9; o potencial dessa combina&#xE7;&#xE3;o.\n\nGoogle TV tem potencial pra bater de frente com \n
\n
Hoje: 2.3 e 3.1\ne ferramentas para que os desenvolvedores criem aplicativos que rodem muito bem em todos eles\n
Trar&#xE1; para o smartphone\n- Novo tema hologr&#xE1;fico\n- Nova tela inicial\n- Widgets melhores\n
Diminuir o esfor&#xE7;o necess&#xE1;rio para que os desenvolvedores adaptem seus aplicativos para todos os tipos de dispositivos.\n\nNovas APIs, principalmente de interface. Componentes v&#xE3;o ser mais inteligentes, como a ActionBar(3.0), e v&#xE3;o se adaptar sozinhos para o espa&#xE7;o dispon&#xED;vel.\n
- Reconhece a face, posi&#xE7;&#xE3;o dos olhos, nariz, boca, etc\n- roda na GPU para maior performance (500 quadros/seg)\n