iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto!...

16
C o m p u t a ç ã o M ó v e l

Transcript of iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto!...

Page 1: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

C o m p u t a ç ã o M ó v e l

Page 2: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� Mercado de celulares e tablets em alta!

� Recursos: câmeras, músicas, bluetooth, ótima interface, jogos, GPS, internet, TV digital

IntroduçãoIntroduçãoIntroduçãoIntroduçãoIntroduçãoIntroduçãoIntroduçãoIntrodução

� Empresas buscam por mobilidade, agilizar seus negócios, integração com sistemas

� Existe então uma plataforma moderna, ágil, interface rica e diversos recursos???

Page 3: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� Android – Google = grande impacto!

� Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance

AndroidAndroidAndroidAndroidAndroidAndroidAndroidAndroid

� Baseada no SO Linux com diversas aplicações já instaladas;

� Ambiente de desenvolvimento poderoso, ousado e flexível (JAVA – open source)

Page 4: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� Arquitetura: integrar aplicações;

� Intent: Mensagemensagemensagemensagem enviada ao SO informando nossa “intenção” de realizar uma tarefa

AndroidAndroidAndroidAndroidAndroidAndroidAndroidAndroid

� Linux gerencia memória e processos. Executa várias aplicações em segundo plano

� Máquina virutal Dalvik: otimizada para mobiles

Page 5: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

AndroidAndroidAndroidAndroidAndroidAndroidAndroidAndroid

Page 6: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� Desenvolvimento de Aplicações com o Eclipse e JAVA

� Eclipse: plugin ADT / MOTODEV

AndroidAndroidAndroidAndroidAndroidAndroidAndroidAndroid

� Android SDK: possui um emulador de celular, ferramentas e API completa para JAVA

� .apk – criado automaticamente pelo plugin

Page 7: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� Componentes de tela no Android: ViewViewViewView XML;

� ActivityActivityActivityActivity é a classe responsável pela tela. Define e controla o estado, os parâmetros e métodos.

Conceitos básicosConceitos básicosConceitos básicosConceitos básicosConceitos básicosConceitos básicosConceitos básicosConceitos básicos

métodos.

� O método setContentView(view)setContentView(view)setContentView(view)setContentView(view): ligação entre Activity e View. Método onCreate().

� AndroidManifestAndroidManifestAndroidManifestAndroidManifest: Base! Configurações.

Page 8: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

public class PrimeiroExemplo extends Activity {

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

}

Conceitos básicosConceitos básicosConceitos básicosConceitos básicosConceitos básicosConceitos básicosConceitos básicosConceitos básicos

}

� A constante R.layout.mainR.layout.mainR.layout.mainR.layout.main foi passada como parâmetro, e conseqüentemente o arquivo main.xml main.xml main.xml main.xml localizado na pasta layout será utilizado como o view princiapal da tela.

Page 9: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� Representa uma tela da aplicação;

� Trata eventos gerados nessa tela;

Cada activity deve implementar o método

ActivityActivityActivityActivityActivityActivityActivityActivity

� Cada activity deve implementar o método onCreate() e chamar o método setContentView(view);

� Ciclos de vida: executando, temporariamente interrompida em segundo plano e destruída.

Page 10: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

ActivityActivityActivityActivityActivityActivityActivityActivity

Page 11: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� É a ação que a aplicação deseja executar;

� Uma intenção da aplicação de realizar determinada tarefa;

IntentIntentIntentIntentIntentIntentIntentIntent

� Essa “intenção” é enviada ao SO como uma mensagem (broadcast)

Page 12: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� Utilizações:◦ Enviar mensagem para SO;◦ Abrir uma nova tela da aplicação: startActivit(intent)◦ Solicitar ao SO fazer uma lgação ◦ Abrir o borwser em um determinado endereço da

IntentIntentIntentIntentIntentIntentIntentIntent

◦ Abrir o borwser em um determinado endereço da internet;◦ Exibir algum endereço, localização ou rota no Google Maps;◦ Enviar uma mensagem para outra aplicação para executar outro processo◦ E muito mais...

Page 13: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� Executar um processamento em segundo plano, por tempo indeterminado (Serviço);

� Faz um alto consumo de recursos, memória e CPU.

ServiceServiceServiceServiceServiceServiceServiceService

CPU.

� Não precisa de interação com usuário e interface gráfica

� Exemplo: MP3 player

Page 14: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� Sempre executado em segundo plano e o SO é responsável pelo processo e gerenciamento de memória;

� Geralmente é iniciado pelo BroadcastReceiverBroadcastReceiverBroadcastReceiverBroadcastReceiver

ServiceServiceServiceServiceServiceServiceServiceService

� Geralmente é iniciado pelo BroadcastReceiverBroadcastReceiverBroadcastReceiverBroadcastReceivere retorna onReceiveIntent(context, intent)onReceiveIntent(context, intent)onReceiveIntent(context, intent)onReceiveIntent(context, intent);

� A classe Service faz parte do cliclo de vida dos processos controlados pelo SO.

Page 15: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� Android permite aplicações com BD;

� Suporte nativo ao SQLite;

Mas o BD não pode ser compartilhado com as

ContentContentContentContentContentContentContentContent ProviderProviderProviderProviderProviderProviderProviderProvider

� Mas o BD não pode ser compartilhado com as diversas aplicações;

� Solução: Content Provider!

Page 16: iMobilis - Android te rico [Modo de Compatibilidade] · Android –Google = grande impacto! Motorola, LG, Samsung, Sony Ericsson: Open Handset Alliance Android Baseada no SO Linux

� Permite que determinadas informações sejam públicas para todas as outras aplicações;

� É possível consultar, inserir, alterar e excluir informações.

ContentContentContentContentContentContentContentContent ProviderProviderProviderProviderProviderProviderProviderProvider

informações.