Baixe o app para aproveitar ainda mais
Prévia do material em texto
Desenvolvimento Android Pontapé inicial... Toshi Kurauchi andrew.kurauchi@gmail.com @toshikurauchi Por que desenvolver para Android? Por que desenvolver para Android? Por que desenvolver para Android? Por que desenvolver para Android? Por que desenvolver para Android? Por que desenvolver para Android? Por que desenvolver para Android? Tudo o que você precisa saber: Tudo o que você precisa saber: http://developer.android.com/index.html Dúvidas? Obrigado! Quero desenvolver para Android!!! Quero desenvolver para Android!!! 1. Baixar o SDK Quero desenvolver para Android!!! 1. Baixar o SDK 2. Instalar o Eclipse Quero desenvolver para Android!!! 1. Baixar o SDK 2. Instalar o Eclipse 3. Instalar o plugin do ADT para o Eclipse E mais um pouco de download... Window -> Android SDK Manager E mais um pouco de download... Window -> Android SDK Manager E mais um pouco de download... Window -> Android SDK Manager E mais um pouco de download... Window -> Android SDK Manager E mais um pouco de download... Window -> Android SDK Manager API Levels? E mais um pouco de download... Window -> Android SDK Manager API Levels? 1 = Android 1.0 2 = Android 1.1 3 = Android 1.5 4 = Android 1.6 5 = Android 2.0 6 = Android 2.0.1 7 = Android 2.1.x 8 = Android 2.2.x ... Criando o emulador... - Window '-- AVD Manager '-- New... Criando o emulador... - Window '-- AVD Manager '-- New... Criando o emulador... - Window '-- AVD Manager '-- New... Criando o emulador... - Window '-- AVD Manager '-- New... Criando o emulador... - Window '-- AVD Manager '-- New... Criando o emulador... - Window '-- AVD Manager '-- New... Criando o emulador... - Window '-- AVD Manager '-- New... Criando o emulador... - Window '-- AVD Manager '-- New... Dica: Nunca feche o emulador Criando o emulador... - Window '-- AVD Manager '-- New... Dica: Nunca feche o emuladorNUNCA Vai desenvolver uma app? Vai desenvolver uma app? JAVA Vai desenvolver uma app? JAVA <XML> Criando nosso projeto... Criando nosso projeto... Criando nosso projeto... Criando nosso projeto... Criando nosso projeto... Criando nosso projeto... Criando nosso projeto... Entendendo o que foi gerado Entendendo o que foi gerado Entendendo o que foi gerado Entendendo o que foi gerado Entendendo o que foi gerado Entendendo o que foi gerado Entendendo o que foi gerado Entendendo o que foi gerado Entendendo o que foi gerado Densidades de tela Aprox. 1mm Fonte: http://ignorethecode.net/blog/2012/03/16/ipad_screen_microscope/ Entendendo o que foi gerado Resource qualifiers Entendendo o que foi gerado Entendendo o que foi gerado Strings, dimensões, cores, valores numéricos, ... Entendendo o que foi gerado Strings, dimensões, cores, valores numéricos, ... Internacionalização: values-en-rUS values-pt-rBR strings.xml Entendendo o que foi gerado AndroidManifest.xml AndroidManifest.xml AndroidManifest.xml AndroidManifest.xml AndroidManifest.xml AndroidManifest.xml AndroidManifest.xml Tela Tela = Tela = Activity (Java) Tela = Activity (Java)+ Tela = Activity (Java) layout (xml)+ Layout XML Layout XML LinearLayout (vertical) Layout XML LinearLayout (vertical) Layout XML LinearLayout (vertical) Layout XML LinearLayout (vertical) Layout XML LinearLayout (vertical) Layout XML LinearLayout (horizontal) Layout XML LinearLayout (horizontal) Layout XML LinearLayout (horizontal) Layout XML LinearLayout (horizontal) Layout XML LinearLayout (horizontal) Layout XML RelativeLayout Layout XML RelativeLayout Layout XML RelativeLayout Layout XML RelativeLayout Views Views <RadioButton> Views <RadioButton> <DatePicker> Views <RadioButton> <RatingBar> <DatePicker> Views <TextView> Texto <RadioButton> <RatingBar> <DatePicker> Views <Button> <TextView> Texto <RadioButton> <RatingBar> <DatePicker> Views <Button> <TextView> Texto <EditText> <RadioButton> <RatingBar> <DatePicker> Views <Button> <TextView> Texto <EditText> <RadioButton> <RatingBar> <CheckBox> <DatePicker> Views <Button> <TextView> Texto <EditText> <RadioButton> <RatingBar> <CheckBox> <DatePicker> Etc... Activity Activity Activity Activity onCreate() onStart() onResume() onPause() onStop() onDestroy() Rodando... Activity Activity Activity onCreate() onStart() onResume() Ac tiv ity XM L Referência para uma View Activity Layout XML <Button android:layout_width="..." android:layout_height="..." android:layout_id="@+id/botao" /> ● ? Referência para uma View Activity Layout XML <Button android:layout_width="..." android:layout_height="..." android:layout_id="@+id/botao" /> ● ? findViewById(?) Diretório res Diretório res Referência para uma View Activity Layout XML <Button ... />● Button findViewById(R.id.botao) Clicando no botão Abrindo outra tela... Abrindo outra tela... Tela => Activity Abrindo outra tela... Tela => Activity Activity a = new MinhaActivity(); a.onCreate(null); Abrindo outra tela... Tela => Activity Activity a = new MinhaActivity(); a.onCreate(null); Abrindo outra tela... Tela => Activity Activity a = new MinhaActivity(); a.onCreate(null); Abrindo outra tela... Tela => Activity Activity a = new MinhaActivity(); a.onCreate(null); Intent i = new Intent(context, OutraTela.class); Abrindo outra tela... Tela => Activity Activity a = new MinhaActivity(); a.onCreate(null); Intent i = new Intent(context, OutraTela.class); startActivity(i); Abrindo outra tela... Abrindo outra tela... Abrindo outra tela... Chamando outras apps Ligação, SMS, sites... Chamando outras apps Ligação, SMS, sites... Chamando outras apps O que eu quero fazer? Chamando outras apps O que eu quero fazer? Ligar! Chamando outras apps O que eu quero fazer? Ligar! Intent i = new Intent(Intent.ACTION_CALL); Chamando outras apps O que eu quero fazer? Ligar! Intent i = new Intent(Intent.ACTION_CALL); Para quem? Chamando outras apps O que eu quero fazer? Ligar! Intent i = new Intent(Intent.ACTION_CALL); Para quem? i.setData(Uri.parse("tel:12345678")); Chamando outras apps O que eu quero fazer? Ligar! Intent i = new Intent(Intent.ACTION_CALL); Para quem? i.setData(Uri.parse("tel:12345678")); Chamar a Activity: Chamando outras apps O que eu quero fazer? Ligar! Intent i = new Intent(Intent.ACTION_CALL); Para quem? i.setData(Uri.parse("tel:12345678")); Chamar a Activity: startActivity(i); Chamando outras apps O que eu quero fazer? Chamando outras apps O que eu quero fazer? Site! Chamando outras apps O que eu quero fazer? Site! Intent i = new Intent(Intent.ACTION_VIEW);Chamando outras apps O que eu quero fazer? Site! Intent i = new Intent(Intent.ACTION_VIEW); Qual? Chamando outras apps O que eu quero fazer? Site! Intent i = new Intent(Intent.ACTION_VIEW); Qual? i.setData(Uri.parse("http://www.ime.usp.br")); Chamando outras apps O que eu quero fazer? Site! Intent i = new Intent(Intent.ACTION_VIEW); Qual? i.setData(Uri.parse("http://www.ime.usp.br")); Chamar a Activity: Chamando outras apps O que eu quero fazer? Site! Intent i = new Intent(Intent.ACTION_VIEW); Qual? i.setData(Uri.parse("http://www.ime.usp.br")); Chamar a Activity: startActivity(i); Chamando outras apps O que eu quero fazer? Chamando outras apps O que eu quero fazer? SMS! Chamando outras apps O que eu quero fazer? SMS! Intent i = new Intent(Intent.ACTION_VIEW); Chamando outras apps O que eu quero fazer? SMS! Intent i = new Intent(Intent.ACTION_VIEW); Para quem? Chamando outras apps O que eu quero fazer? SMS! Intent i = new Intent(Intent.ACTION_VIEW); Para quem? i.setData(Uri.parse("sms:12345678")); Chamando outras apps O que eu quero fazer? SMS! Intent i = new Intent(Intent.ACTION_VIEW); Para quem? i.setData(Uri.parse("sms:12345678")); O que? Chamando outras apps O que eu quero fazer? SMS! Intent i = new Intent(Intent.ACTION_VIEW); Para quem? i.setData(Uri.parse("sms:12345678")); O que? i.putExtra("sms_body", "Mensagem do SMS") Chamando outras apps O que eu quero fazer? SMS! Intent i = new Intent(Intent.ACTION_VIEW); Para quem? i.setData(Uri.parse("sms:12345678")); O que? i.putExtra("sms_body", "Mensagem do SMS") Chamar a Activity: Chamando outras apps O que eu quero fazer? SMS! Intent i = new Intent(Intent.ACTION_VIEW); Para quem? i.setData(Uri.parse("sms:12345678")); O que? i.putExtra("sms_body", "Mensagem do SMS") Chamar a Activity: startActivity(i); Permissões... Permissões... Acessando a internet... Acessando a internet... Acessando a internet... HttpClient c = new DefaultHttpClient(); Acessando a internet... HttpClient c = new DefaultHttpClient(); HttpGet get = new HttpGet("http://www.ime.usp.br"); Acessando a internet... HttpClient c = new DefaultHttpClient(); HttpGet get = new HttpGet("http://www.ime.usp.br"); HttpResponse response = c.execute(get); Acessando a internet... HttpClient c = new DefaultHttpClient(); HttpGet get = new HttpGet("http://www.ime.usp.br"); HttpResponse response = c.execute(get); String conteudo = EntityUtils.toString(response.getEntity()); Acessando a internet... HttpClient c = new DefaultHttpClient(); HttpGet get = new HttpGet("http://www.ime.usp.br"); HttpResponse response = c.execute(get); String conteudo = EntityUtils.toString(response.getEntity()); Acessando a internet... Per mis são de Inte rnet Fragments Fragments Fragments Fragments Fragments Colocando Fragments na tela... Layout XML Colocando Fragments na tela... Layout XML Activity Colocando Fragments na tela... Layout XML Activity Só a part ir do 3.0 (Hon eyCo mb)! !! Colocando Fragments na tela... Layout XML Activity Só a part ir do 3.0 (Hon eyCo mb)! !! Compatibility Library ActionBar ActionBar ActionBar ActionBar ActionBar ActionBar res/menu/main_menu.xml ActionBar ActionBar ActionBar A p arti r do 3.0 Links úteis http://developer.android.com/index.html http://developer.android.com/design/index.html http://actionbarsherlock.com/ http://pivotal.github.com/robolectric/ http://blog.stylingandroid.com/ http://code.google.com/p/google-gson/
Compartilhar