Your SlideShare is downloading. ×
Minicurso2013
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Minicurso2013

98
views

Published on

Mini curso ministrado nos dias 20 e 21 de março de 2013, na faculdade Unime.

Mini curso ministrado nos dias 20 e 21 de março de 2013, na faculdade Unime.

Published in: Software

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
98
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Minicurso Android Flávio Kreis flaviokreis@gmail.com 20 e 21 de março de 2013 1
  • 2. 2
  • 3. Objetivo • Apresentar os conceitos básicos para o desenvolvimento de aplicativos para dispositivos móveis utilizando Sistema Operacional Android bem como informações de mercado e curiosidades. 3
  • 4. Agenda • Introdução; • Mercado e dispositivos; • Ambiente de desenvolvimento; • HelloWorld; • Instalando API Demos; • Conceitos básicos para desenvolvimento: – Activity, ListActivity, ciclo de vida da Activity, Layout, View e ViewGroup, Manifest, Resources, Intent; • Exemplo – Lista de Estados brasileiros; • Onde buscar mais informações; 4
  • 5. Introdução • O que é Android – Sistema operacional para dispositivos móveis*; – Código aberto (open-source); – Grátis para quem quiser utilizar; – Baseado em Linux; 5
  • 6. Mercado • 77%(2,17mi.) Tablets vendidos no Brasil em 2012 utilizam Android; • + Tablets do que computadores em 2013; • + 1mi. de aparelhos ativos por dia; • + 1,5bi de downloads de apps por mês; • 850mil de apps e 40bi de downloads de apps (Abril); 6
  • 7. Comparação Aparelhos Samsung Galaxy Y Samsung Galaxy S4 Iphone 5 Processador 832 Mhz Quard 1.6 + Quard 1.2 Dual 1.2 Resolução 240x320 1080x1920 640x1136 Tela 3" 5" 4" Câmera 2.0 MP 13.0 MP 8.0 MP Memória Ram 290 MB 2 GB 1 GB Memória Interna 180 MB 16/32/64GB 16/32/64GB Cartão de Memória 32 GB 64 GB no 7
  • 8. Ambiente de Desenvolvimento • http://developer.android.com/sdk/index.html • ADT – Android Development Tools 8
  • 9. Primeiro programa: Hello World! 9
  • 10. Hello World – Parte 1 10
  • 11. Hello World – Parte 2 11
  • 12. Estrutura do Projeto • src – Arquivos Java; • res – Recursos: – drawable – Imagens; – layout – Xml de Layout; – values – String, estilos, arrays …; • AndroidManifest.xml – Configuração do aplicativo; 12
  • 13. Criar Emulador 13
  • 14. Criar Emulador 14
  • 15. Perspectiva DDMS 15
  • 16. API Demos 16
  • 17. Activity • Geralmente representa uma tela na aplicação; • É a interface gráfica com o usuário; • Controla eventos; • Uma aplicação possui uma ou mais Activities; • Subclasses: ListActivity, MapActivity, … 17
  • 18. Ciclo de vida de uma Activity OnCreate OnStart OnResume Executando OnPause OnStop OnDestroy OnRestart public class MainActivity extends Activity { private static final String TAG = "MainActivity"; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.d(TAG, "onCreate"); } protected void onStart() { super.onStart(); Log.d(TAG, "onStart"); } protected void onResume() { super.onResume(); Log.d(TAG, "onResume"); } … 18
  • 19. ViewGroup • Gerenciador de componentes visuais; • Organiza a disposição dos componentes; 19
  • 20. ViewGroup - LinearLayout • Utilizado para organizar os componentes na vertical ou horizontal; • Diferenciais: – orientation; – weight; 20
  • 21. ViewGroup - RelativeLayout • Permite posicionar um componente relativo a outro componente; • Diferenciais: – alignParent; – toRightOf; – toLeftOf; – below; – above; 21
  • 22. ViewGroup - ListView • Mostra uma lista de itens com rolagem vertical. Os itens da lista são automaticamente inseridos na lista usando um Adapter*; 22
  • 23. ViewGroup - GridView • Mostra os itens divididos entre colunas e linhas e possui rolagem vertical. Os itens da lista são automaticamente inseridos na lista usando um Adapter*; 23
  • 24. View • Representa os componentes visuais; • Podem ser textos, campos de texto, botões, imagens, caixa de seleção, vídeo, barra de progresso, página de internet,…; 24
  • 25. TextView • Representa um texto(label) na tela; 25
  • 26. EditText • Representa um campo de entrada de texto 26
  • 27. Button e ImageButton • Representa um botão na tela; 27
  • 28. Acesso aos elementos do layout • Utilizado para acessar os elementos do layout na Activity; • Utiliza-se o método findViewById(id); • Necessário definir um “id” no elemento no arquivo de layout xml. No Layout XML: <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text=”OK” /> Na Ativity: Button button = (Button)findViewById(R.id.button); 28
  • 29. Tratamento de eventos • Interação com o usuário; • Ex: clique no botão, selecionar uma opção no menu,…; button.setOnClickListener( new OnClickListener() { @Override public void onClick(View v) { executarAcao(); } }); button.setOnLongClickListener( new OnLongClickListener() { @Override public boolean onLongClick(View v) { executarAcaoLongClick(); return false; } }); 29
  • 30. Exemplo Preencher Texto • Criar um Layout adicionando um TextView, EditText e um Button; • Acessar os elementos do Layout na Activity; • Capturar o evento de clique no Button e preencher o TextView com o texto capturado no EditText; 30
  • 31. Adicionando uma nova Activity • Criar uma nova Classe; Clique com botão direito 31
  • 32. Adicionando uma nova Activity A Classe herda de Activity Sobrescreve o método onCreate 32
  • 33. Adicionando uma nova Activity • Cria um novo layout Cria-se um novo layout 33
  • 34. Adicionando uma nova Activity • Registra a Classe no AndroidManifest.xml Abrir aba Application Clicar em Add... Adicionar nome da Activity 34
  • 35. Intent • Representa a “intenção” da aplicação de realizar determinada tarefa; • O Sistema Operacional interpreta a intenção e toma alguma ação; 35
  • 36. Intent • Utilizado para: – Enviar uma mensagem para o Sistema Operacional; – Abrir uma nova tela da aplicação; – Solicitar uma ligação; – Abrir um site; – Exibir algum endereço no mapa; – Abrir o Google Play; – E muito, muito mais … 36
  • 37. Intents - Exemplos //Abrir site //Permissão: android.permission.INTERNET Uri uri = Uri.parse("http://google.com"); Intent intent = new Intent( Intent.ACTION_VIEW, uri ); startActivity(intent); //Realizar ligação //Permissão: android.permission.CALL_PHONE Uri uri = Uri.parse(”tel:98765432"); Intent intent = new Intent( Intent.ACTION_CALL, uri ); startActivity(intent); //Abrir contato com ID 1 //Permissão: android.permission.READ_CONTACTS Uri uri = Uri.parse(”content://com.android.contacts/contacts/1"); Intent intent = new Intent( Intent.ACTION_VIEW, uri ); startActivity(intent); 37
  • 38. Intents - Exemplos //Abrir uma nova tela Intent intent = new Intent( MainActivity.this, SecondActivity.class ); startActivity(intent); //Abrir uma nova tela com retorno de resultado Intent intent = new Intent( MainActivity.this, SecondActivity.class ); startActivityForResult( intent, 1 ); 38
  • 39. Exemplo – Lista de Estados brasileiros • Criar a primeira Activity que lista os Estados brasileiros; • Ao clicar em um Estado da lista é iniciado uma segunda Activity com os detalhes referentes ao Estado, como: – Bandeira, nome, capital, sigla, região, PIB, população, renda per capita e site; 39
  • 40. Exemplo – Lista de Estados 40
  • 41. Onde encontrar mais informações 41
  • 42. Onde encontrar mais informações • Sites: – developer.android.com – stackoverflow.com 42
  • 43. Obrigado! Entre em contato: Flávio Kreis flaviokreis@gmail.com facebook.com/flaviokreis 43
  • 44. Referências • http://developer.android.com/about/index.ht ml <27/04/2013> • http://en.wikipedia.org/wiki/Google_Play <27/04/2013> • ANDROID Aprenda a criar aplicações para dispositivos móveis com o Android SDK – Ricardo R. Lecheta – 2ª Edição – Junho/2010 – Editora Novatec 44