Dê seus primeiros passos no desenvolvimento com Android

5.514 visualizações

Publicada em

No slide são apresentados os seguintes tópicos: conceitos, estrutura do projeto, gerenciadores de layouts, interface gráfica e como publicar sua app.

Publicada em: Tecnologia
0 comentários
6 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
5.514
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2.564
Ações
Compartilhamentos
0
Downloads
82
Comentários
0
Gostaram
6
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Dê seus primeiros passos no desenvolvimento com Android

  1. 1. Dê seus primeiros passos no Desenvolvimento com Android
  2. 2. Agenda Introdução Conceitos Estrutura do projeto Activity Intent Interface gráfica Como publicar sua App Demonstração Perguntas e Respostas
  3. 3. Introdução Android Plataforma de desenvolvimento de aplicativos moveis OHA Grupo de líderes que compartilham esta visão para mudar a experiência móvel para os consumidores. SO Linux Kernel 2.6 Maquina Virtual Dalvik Maquina virtual otimizada para dispositivos moveis
  4. 4. Conceitos Activity Activity similar a Jframe do Swing, representa uma tela da aplicação android.app.Activity e androd.view.View Metodo setContentView(view)
  5. 5. Conceitos Classe R Constantes que facilitam acesso aos recursos do projeto Graças a classe R que ao inflarmos um layout, usamos a referencia R.layout.main ou para pegarmos uma imagem utilizamos R.drawable.ic_louncher. Para cada arquivos adicionado é cria uma constante desse objeto na classe R.
  6. 6. Conceitos AndroidManifest.xml Apresenta informações essenciais sobre o aplicativo para o sistema Android. Algumas funcionalidades: Ele descreve os componentes da aplicação - activities, services, broadcast receivers e content providers que a aplicação é composto; Ele declara as permissões do aplicativo deve ter para acessar partes protegidas da API e interagir com outras aplicações; Ele declara o nível mínimo da API Android que a aplicação requer.
  7. 7. Conceitos Carregar XML public class Conceitos extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_conceitos); } }
  8. 8. Conceitos Criação de uma interface gráfica com XML <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".Conceitos" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> </RelativeLayout>
  9. 9. Conceitos Criação de uma interface gráfica com API public class Conceitos extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView view = new TextView(this); view.setText("Exemplo de Texto no Android"); setContentView(view); } }
  10. 10. Conceitos Acesso a elementos da tela (findViewById()) Ao criar uma tela usando um arquivo XML de Layout, surge a necessidade de recuperar os objetos definidos no arquivo dentro do código-fonte da aplicação. EditText text = (EditText) findViewById(R.id.ed_conceitos); String digitado = text.getText().toString(); Log.i("EXEMPLO", "O texto digitado foi " + digitado);
  11. 11. Conceitos Log Cat O log do sistema Android fornece um mecanismo para coletar e visualizar a saída de depuração do sistema. Tipos de Log Verbose Debug Info Warn Error
  12. 12. ESTRUTURA DO PROJETO
  13. 13. Estrutura do Projeto
  14. 14. Estrutura do Projeto src É onde fica o código fonte da nossa aplicação.(source) gen Generated source folder(Classe R) assets Local destinado a guardar arquivos.(Geralmente documentação do sistema)
  15. 15. Estrutura do Projeto bin Local onde é gerado o arquivo compilado(.apk) libs Local onde deve ficar as bibliotecas de terceiros res Pasta de resources da aplicação, aqui ficaram arquivos de layout, imagens, XML de configuração, XML com strings internacionalizáveis, raw files, sons, etc..
  16. 16. ACTIVITY
  17. 17. Uma Activity é um componente do aplicativo que fornece uma tela com a qual os usuários podem interagir, a fim de fazer algo, como discar o telefone, tire uma foto, envie um e-mail, ou visualizar um mapa. Uma aplicação consiste geralmente de múltiplas Activity que são fracamente ligados uns aos outros. Activity
  18. 18. Activity Ciclo de Vida
  19. 19. Activity Ciclo de Vida
  20. 20. Activity Exemplo do Ciclo de Vida public class FrameLayout extends Activity { private final String TAG = "FRAME_LAYOUT"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_frame_layout); Log.i(TAG, "onCreate() chamado."); } @Override protected void onStart() { super.onStart(); Log.i(TAG, "onStart() chamado."); }
  21. 21. Activity Exemplo do Ciclo de Vida @Override protected void onRestart() { super.onRestart(); Log.i(TAG, "onRestart() chamado."); } @Override protected void onResume() { super.onResume(); Log.i(TAG, "onResume() chamado."); } @Override protected void onPause() { super.onPause(); Log.i(TAG, "onPause() chamado."); }
  22. 22. Activity Exemplo do Ciclo de Vida @Override protected void onStop() { super.onStop(); Log.i(TAG, "onStop() chamado."); } @Override protected void onDestroy() { super.onDestroy(); Log.i(TAG, "onDestroy() chamado."); } }
  23. 23. Activity Navegação entre telas startActivity(intent) irá iniciar a próxima tela sem qualquer vinculo. startActivityForResult(intent, codigo) retorna uma informação para a Activity que a chamou. Intent it = new Intent(Main.this, WebVieww.class); startActivity(it); private static final int CLIENTE = 1; Intent it = new Intent(Main.this, WebVieww.class); startActivityForResult(it, CLIENTE);
  24. 24. Activity Passagem de parâmetros para a próxima tela Passar parâmetros entre duas telas Receber esses parâmetros na outra tela Intent it = new Intent(Main.this, Parametros.class); Bundle params = new Bundle(); params.putString("msg", "Olá GUJavaSC"); it.putExtras(params); startActivity(it); Intent it = getIntent(); if(it != null){ Bundle params = it.getExtras(); if(params != null){ String msg = params.getString("msg"); Log.i("EXEMPLO", "O parametro recebido é " + msg); }
  25. 25. Outra forma de passar e receber parâmetros Passar parametros para outra tela. Receber parametros na outra tela Activity Intent it = new Intent(Main.this, Parametros.class); it.putExtra("msg", "Olá GUJavaSC!"); startActivity(it); Intent it = getIntent(); if(it != null){ String msg = it.getStringExtra("msg"); Log.i("EXEMPLO", "O parametro recebido é " + msg); }
  26. 26. Encerrar uma Activity finish() finishActivity() Na maioria dos casos, você não deve terminar explicitamente uma atividade usando esses métodos, o sistema Android gerencia a vida de uma atividade. Activity
  27. 27. INTENT
  28. 28. Intent Refere-se às intenções, operações a serem realizadas. Seu uso é mais significativo no lançamento de activities. Com Intents você pode enviar ou recuperar dados. startActivity(intent); getIntent();
  29. 29. Intent Chamada de aplicações nativas Abrir o browser Simular uma chamada Uri uri = Uri.parse("http://www.gujavasc.org"); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); String url = "tel:99999999"; Intent it = new Intent(Intent.ACTION_CALL, Uri.parse(url)); startActivity(it);
  30. 30. INTERFACE GRÁFICA
  31. 31. Interface Gráfica Gerenciadores de Layout Orientam o posicionamento dos componentes visuais na tela. Fazer um componente preencher toda a tela. Organizar os componentes na horizontal ou vertical; Posicionar um componente relativo a outro (abaixo, acima ou ao lado de um componente já existente).
  32. 32. Interface Gráfica Principais Layouts FrameLayout LinearLayout RelativeLayout List View Grid View
  33. 33. Interface Gráfica FrameLayout Utilizado quando a tela tem apenas um componente que pode preencher a tela inteira.
  34. 34. Interface Gráfica LinearLayout Organiza seus componentes em uma única coluna ou uma única linha podendo ter orientação Vertical ou Horizontal.
  35. 35. Interface Gráfica RelativeLayout Permite posicionar os componentes ao lado, abaixo ou acima de outro componente já existente.
  36. 36. Interface Gráfica List View Mostra uma lista de itens. Os itens são automaticamente inseridos na lista usando um Adapter.
  37. 37. Interface Gráfica List View Mostra uma grade de itens. Os itens são automaticamente inseridos na grade usando um ListAdapter.
  38. 38. PUBLICAR SUA APP
  39. 39. Publicar sua App Registre-se em uma conta Google Play. Acesse o Google Play https://play.google.com/apps/publish/ Informe seu dados de identificação. (nome, e-mail...) Leia e aceite os termos (Developer Distribution Agreement) Pague uma taxa de registro de $25
  40. 40. Publicar sua App Se você for vender sua App, registre-se no Google Wallet Merchant. Acesse sua conta de desenvolvedor https://play.google.com/apps/publish/ Abra o Relatórios Financeiros Click em Configure uma conta do comerciante agora
  41. 41. Desenvolvimento Android Por onde começar? Android StudioAndroid SDK
  42. 42. Perguntas e Respostas ?

×