indrodução ao android 1º encontro jug vale 2012
TRANSCRIPT
INTRODUÇÃO AO DESENVOLVIMENTO DE APLICATIVOS PARA ANDROID
Paulo Luan Pedro Henrique
1° Encontro JUG Vale em SJCamspos17 Março 2012
Cronograma● Apresentação;● O que é Android?● Motivação;● Pré-Requistos e Ferramentas;● Arquitetura;● Activity;● Intent;● Content Provider;● Broadcast Receiver;● Layout;● Eventos;● Listeners;● Futuro;● Programação ao vivo● Referências.
Fonte da Imagem: http://devmobilebrasil.com.br/wp-content/uploads/2011/12/AutoCompleteTextView.jpg
ApresentaçãoPaulo Luan
Graduando em Tecnologia em Banco de Dados pela FATEC de SJCampos 5º Semestre;Programador Java Estagiário na Fundação de Ciências Aplicações e Tecnologias Espaciais.
Pedro Henrique ([email protected])
Graduando em Tecnologia em Banco de Dados pela FATEC de SJCampos 5º Semestre;Estagiário de Desenvolvimento na ERNet (SuperPay).
O Que é Android?● Sistema Operacional para dispositivos móveis;● Baseada em Linux;● Plataforma Aberta;● Adquirida em 2005 pela americana Google;● Usa "Java" como linguagem de programação (:D)
Motivação
■ Vendas de smartphones no Brasil crescem 179% em 2011;
■ 3 a cada 5 aparelhos são Android (61%);■ O mercado está em constante crescimento; ■ Usa "Java" como linguagem de programação;■ Salário inicial R$ 4 mil [Info, 2012]
Fonte da Imagem: http://www.mundozoom.com.br/wp-content/uploads/2011/01/android-ultrapassa-apple-iOS-300x238.jpg
Pré-Requisitos e FerramentasJDKSDK AndroidEclipse - NetBeans - MotoDev - "Na Unha"Sistema Operacional:
● Windows;● Linux;● Mac OS
Fonte da Imagem: http://www.fandroid.com.br/wp-content/uploads/2011/03/androidTool.png
Arquitetura: Camada de Software
fonte: http://developer.android.com/images/system-architecture.jpg
Activity● Classe Java gerenciadora de Interfaces Gráficas; ● Controla o comportamento de seu aplicativo mediante as
interações do usuário; ● Adiciona eventos aos componentes.
Ciclo de Vida de uma Activity
Fonte da Imagem: http://developer.android.com/images/activity_lifecycle.png
Intents (Intenções) Intent refere-se às intenções que a sua aplicação deseja. São determinados comandos que podemos enviar ao Sistema Operacional Android para realizar alguma ação.
Alguns métodos relacionados aos Intents● O método startActivity(Intent intent) Inicia outra aplicação;
● O método getIntent() recupera uma intent enviada por meio do startActivity().
● O método putExtra(“nome_de_identificação”, valor) insere na intent algum valor, semelhante ao HashMap (chave, valor). Pode-se enviar tipos primitivos ou objetos que implementem a interface "Parcelable".
● O getStringExtra(“nome_de_identificação”) - recupera o valor enviado para a segunda activity.
Exemplo de uma calculadora com intents.
Intents (Intenções)Através das intents podemos invocar outras aplicações ou aplicações nativas do sistema.Por exemplo, realizar uma chamada:
phoneIntent = new Intent(); phoneIntent.setAction(Intent.ACTION_DIAL); phoneIntent.setData(Uri.parse("tel:8885551234"));
Intents (Aplicações Nativas)
Content Providers ● Content Providers guardam e buscam dados
e tornando disponíveis para todas as aplicações.
● Encapsula a persistência de dados.● Criação de Shared contents providers.
○ Exemplo: SMS, audio, video, imagens, informação de contatos, e assim por diante
Broadcast Receiver
● Recebe e reage a anúncios de Broadcast;
● Notifica a sua aplicação quando algum evento do sistema ocorrer;
● Não Possui interface com usuário;
● Roda em segundo Plano;
● Exemplo: Carga de Bateria, Fone de ouvido plugado/desplugado.
Layout ● XML● Controlado pelas activities.
O arquivo AndroidManifest ● Funciona como o web.xml de um mapeamento de servlets em
Java.● Descreve os componentes de aplicação;● Mapeia as activities;● Define nomes para as activities;● Modos de orientação da tela (vertical, horizontal ou ambos);● Declara permissões para acesso à recursos do celular como o
GPS ou Internet por exemplo; ● Qual activity iniciará primeiro quando a aplicação for aberta;
Listeners: Alguns exemplos ● onClick() → View.OnClickListener
● onLongClick() → View.OnLongClickListener
● onKey() → View.OnKeyListener
● onTouch() → View.OnTouchListener
Futuro
"Só em 2011, o mercado internacional de apps movimentou cerca de 6,8 bilhões de dólares. Até 2015, essa quantia pode chegar a algo entre 25 bilhões e 38 bilhões de dólares ao ano, de acordo com as consultorias MarketsandMarkets e Forrester Research." [Info Abril, 2012]
Prática, os progradores piram!
Programação ao Vivo! Fonte da Imagem: http://androidblog.com.br/wp-content/uploads/2011/12/google-dev.png
Links 1. http://www.android.com/2. http://www.blogdoandroid.com/3. http://www.euandroid.com.br/4. http://www.androidbrasil.com/5. http://developer.android.com/index.html6. http://developer.android.com/resources/browser.html?tag=tutorial7. http://javafxbr.com/blog
Fonte da Imagem: http://www.estudiocopacabana.com.br/blog/wp-content/uploads/2010/10/android-lab.jpg
Fonteshttp://developer.android.com/reference/ http://g1.globo.com/tecnologia/noticia/2012/03/vendas-de-smartphones-no-brasil-crescem-179-em-2011-diz-pesquisa.html http://www.ibm.com/developerworks/br/library/os-android-devel/ http://ccsl.ime.usp.br/pt-br/news/11/03/14/android-no-ime-usp http://www.tiobe.com/index.php/content/company/Home.html http://info.abril.com.br/noticias/carreira/8-dicas-para-tornar-se-um-desenvolvedor-android-12032012-7.shl http://informatica.hsw.uol.com.br/google-phone2.htm http://www.vivasemfio.com/blog/arquitetura-do-android/ http://java2s.com