Introdução ao Desenvolvimento para Android
-
Upload
mario-valney -
Category
Internet
-
view
171 -
download
2
Transcript of Introdução ao Desenvolvimento para Android
![Page 1: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/1.jpg)
AndroidIntrodução ao Desenvolvimento para Android
por Mário
Valney
![Page 2: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/2.jpg)
Que Mário?
![Page 3: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/3.jpg)
Que Mário?
mariovalney.com
![Page 4: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/4.jpg)
AGENDA
- Introdução sobre o Sistema Operacional.- As versões do Android.- O Android Studio.- Como criar um projeto e versioná-lo usando GIT.- O que são Activities e Fragments.- A pasta "/res" e os Resources no Android.- Exemplo de um App que se conecta à uma API JSON. *
![Page 5: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/5.jpg)
android
![Page 6: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/6.jpg)
2000: BlackBerry
- consultar anexos- ler emails- internet
próprio - fechado -
nada de evoluções -
![Page 7: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/7.jpg)
2003: Andy Rubin Android Inc.
![Page 8: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/8.jpg)
2005: Google Mobile Division
2007: R$ 10.000.000 para DEVS2008: T-Mobile anuncia o T-Mobile G1 +1 mês: Android 1.0 sob a licença Apache
![Page 9: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/9.jpg)
Android 1.6
Donut
![Page 10: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/10.jpg)
EclairAndroid 2.0
![Page 11: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/11.jpg)
Froyo
Android 2.2
![Page 12: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/12.jpg)
Android 2.3Gingerbrea
d
![Page 13: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/13.jpg)
Android 3.0
Honeycomb
![Page 14: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/14.jpg)
Android 4.0
Ice Cream Sandwich
![Page 15: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/15.jpg)
Jelly BeanAndroid 4.1
![Page 16: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/16.jpg)
Android 4.4 Kit Kat
![Page 17: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/17.jpg)
LollipopAndroid 5.0
![Page 18: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/18.jpg)
#soudev
![Page 19: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/19.jpg)
android
studio
![Page 20: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/20.jpg)
Android Studio?
- Android Studio (recomendado)
- Eclipse + ADT(plugin para desenvolvimento Android)
- Somente o SDK Tools (você é um herói)
![Page 21: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/21.jpg)
Android Studio?
- Android Studio
![Page 22: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/22.jpg)
Android Studio?
- Sistema Gradle-based- Templates para ajudar a criar os tipos mais comuns de App- Editor de layout que suporta o recurso de "drag and drop"- Ferramentas de lint voltadas para performance, compatibilidade,
usabilidade e outros problemas- Suporte interno a Google Cloud Platform, tornando fácil
integrar os recursos do Google Cloud Messaging e muito mais...
![Page 23: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/23.jpg)
Android Studio!
Instalando- Windows: dois cliques e pronto- Linux: android-studio/bin e executa studio.sh
Atualizando- Help > Check for Updates
SDK Manager
![Page 24: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/24.jpg)
Criando um Projeto
New Project…
![Page 25: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/25.jpg)
Criando um Projeto
Choosing Version...
![Page 26: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/26.jpg)
![Page 27: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/27.jpg)
Criando um Projeto
Templates...
![Page 28: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/28.jpg)
Criando um Projeto
MainActivity...
![Page 29: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/29.jpg)
Criando um Projeto
The Project...
![Page 30: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/30.jpg)
depuração USB em Developer Options
Build Number em About
Hello World!
![Page 31: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/31.jpg)
![Page 32: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/32.jpg)
Versionando seu Projeto
- Aba TERMINAL do Android Studio- Suba um nível- git init- git commit -a -m "Initial commit"- git remote add origin [URL DO SEU
REPOSITÓRIO]- git push origin master
![Page 33: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/33.jpg)
manifesto
![Page 34: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/34.jpg)
manifest.xml
- Nome da Aplicação- Versão e Ícone do Aplicativo- Mínima Versão do Android- Nome do Pacote- Descrição das Activities- Declaração de Services, Receivers e
Providers- Listagem das Permissões do Usuário
Arquivo mais importante da sua Aplicação
![Page 35: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/35.jpg)
User Interface
Activity vs Fragment
![Page 36: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/36.jpg)
User Interface ?
Tudo o que o usuário interage
![Page 37: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/37.jpg)
Telas!
![Page 38: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/38.jpg)
Activity
- Toda aplicação roda uma ou mais Activities
- Apenas uma Activity roda por vez
- Você constrói sua UI em cima de uma Activity
![Page 39: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/39.jpg)
Fragment
- A partir da versão 3.0: HONEYCOMB
- Modularização
- Geranciado pelo FragmentManager
![Page 40: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/40.jpg)
Activity Stack
![Page 41: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/41.jpg)
Life Cycle
onCreateonStart
onResumeonPause
onStoponRestartonDestroy
![Page 42: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/42.jpg)
Life Cycle
onCreateonStart
onResumeonPause
onStoponRestartonDestroy
![Page 43: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/43.jpg)
Life Cycle
onCreateonStart
onResumeonPause
onStoponRestartonDestroy
HONEYCOMB
killable
a aplicação pode ser destruída pelo sistema sem executar nenhum
método adicionalmente
![Page 44: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/44.jpg)
Resources
![Page 45: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/45.jpg)
Tipos de Resources
- Animações- Cores- Drawables- Layouts- Menus- Strings- Estilos- Outros tipos (boleanos, inteiros, arrays)
![Page 46: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/46.jpg)
/res
- Animações- Cores- Drawables- Layouts- Menus- Strings- Estilos- Outros tipos (boleanos, inteiros, arrays)
/animator
![Page 47: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/47.jpg)
E essas outras pastas?
![Page 48: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/48.jpg)
E essas outras pastas?New Android Resource Directory
![Page 49: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/49.jpg)
E essas outras pastas?Choosing the Qualifiers...
![Page 50: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/50.jpg)
Acessando um Resource
aapt tool gera a classe R
activity_about.xml
@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_about);}
![Page 51: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/51.jpg)
Acessando um Resource
aapt tool gera a classe R
uma string
<TextView android:id="@+id/list_item_textview_title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/app_credits" style="@style/h1"/>
![Page 52: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/52.jpg)
APP
![Page 53: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/53.jpg)
JASON
- Receber dados de uma
API
- Listar esses dados na
tela
![Page 54: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/54.jpg)
Passo 1: Criar o Projeto no Android Studio
![Page 55: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/55.jpg)
Passo 2: Criar a User Interface e Resources
![Page 56: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/56.jpg)
Passo 3: Criar o Fragment
![Page 57: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/57.jpg)
CategoryFragment.java
- onCreateOptionsMenu
- onOptionsItemSelected
- onCreateView
- Inflater
- ArrayAdapter
- AsyncTask
![Page 58: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/58.jpg)
Passo 4: Criar a Activity
![Page 59: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/59.jpg)
Passa lá no Github...
https://github.com/mariovalney/gsamaps-app
![Page 60: Introdução ao Desenvolvimento para Android](https://reader034.fdocumentos.tips/reader034/viewer/2022052418/589ed28b1a28ab47138b7167/html5/thumbnails/60.jpg)
Q/A