Introdução ao
Desenvolvimento para Android
por
Mário Valney
Que Mário?
Que Mário?
mariovalney.com
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. *
android
2000: BlackBerry
- consultar anexos
- ler emails
- internet
próprio -
fechado -
nada de evoluções -
2003:
Andy Rubin
Android Inc.
2005: Google Mobile Division
2007: R$ 10.000.000 para DEVS
2008: T-Mobile anuncia o T-Mobile G1
+1 mês: Android 1.0 sob a licença Apache
Android 1.6
Donut
EclairAndroid 2.0
Froyo
Android 2.2
Android 2.3
Gingerbread
Android 3.0
Honeycomb
Android 4.0
Ice Cream Sandwich
Jelly Bean
Android 4.1
Android 4.4 Kit Kat
Lollipop
Android 5.0
#soudev
android
studio
Android Studio?
- Android Studio(recomendado)
- Eclipse + ADT(plugin para desenvolvimento Android)
- Somente o SDK Tools (você é um herói)
Android Studio?
- Android Studio
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...
Android Studio!
Instalando
- Windows: dois cliques e pronto
- Linux: android-studio/bin e executa studio.sh
Atualizando
- Help > Check for Updates
SDK Manager
Criando um Projeto
New Project…
Criando um Projeto
Choosing
Version...
Criando um Projeto
Templates...
Criando um Projeto
MainActivity...
Criando um Projeto
The Project...
depuração USB em Developer Options
Build Number em About
Hello World!
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
manifesto
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
User Interface
Activity vs Fragment
User Interface ?
Tudo o que o
usuário interage
Telas!
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
Fragment
- A partir da versão 3.0: HONEYCOMB
- Modularização
- Geranciado pelo FragmentManager
Activity Stack
Life Cycle
onCreate
onStart
onResume
onPause
onStop
onRestart
onDestroy
Life Cycle
onCreate
onStart
onResume
onPause
onStop
onRestart
onDestroy
Life Cycle
onCreate
onStart
onResume
onPause
onStop
onRestart
onDestroy
killable
a aplicação pode ser
destruída pelo sistema
sem executar nenhum
método adicionalmente
Resources
Tipos de Resources
- Animações
- Cores
- Drawables
- Layouts
- Menus
- Strings
- Estilos
- Outros tipos (boleanos, inteiros, arrays)
/res
- Animações
- Cores
- Drawables
- Layouts
- Menus
- Strings
- Estilos
- Outros tipos (boleanos, inteiros, arrays)
/animator
E essas outras pastas?
E essas outras pastas?
New Android
Resource Directory
E essas outras pastas?
Choosing the Qualifiers...
Acessando um Resource
aapt tool gera a classe R
activity_about.xml
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_about);
}
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"/>
APP
JASON
- Receber dados de uma API
- Listar esses dados na tela
Passo 1: Criar o Projeto no Android Studio
Passo 2: Criar a User Interface e Resources
Passo 3: Criar o Fragment
CategoryFragment.java
- onCreateOptionsMenu
- onOptionsItemSelected
- onCreateView
- Inflater
- ArrayAdapter
- AsyncTask
Passo 4: Criar a Activity
Passa lá no Github...
https://github.com/mariovalney/gsamaps-app
Q/A
Thanks!
mariovalney.com @mariovalney google.com/+MárioValney mariovalney@gmail.com

Introdução ao Desenvolvimento para Android