Desenvolvimento deApps e Games para AndroidPor Erisvaldo Júnior.   Parte 5 (20/09/2011)
RECAPITULANDO…
android.util.LogClasse de Log do Android. Permite armazenar logs de até cincotipos:
LogCatPermite a visualização do Log. Disponível na perspectiva Debug doADT no Eclipse.
Internacionalização2. Organizar os recursos, mapeando as pastas values/ (strings.xml)e res/ para cada região / linguagem s...
Internacionalização3. Criar o strings.xml para cada linguagem.
Internacionalização4. Testar a aplicação no emulador.
Como criar uma Splash Screen
Activity em Tela Cheia (Full Screen)
Classe Intent     Um objeto Intent é uma mensagem composta por duas partes: action e data.• ACTION – ação a ser realizada....
Exemplo Activity Implícita(acessar uma URL no Browser)
Computação Móvel / Pervasiva / Ubíqua
Armazenamento de DadosO Android provê diversas opções para armazenar dados daaplicação. A escolha da melhor opção deve ser...
Shared Preferences
Internal StoragePara criar e escrever em um arquivo privado para a memóriainterna, chama-se o método openFileOutput() com ...
External Storage  Todo dispositivo Android suporta uma mídia externa de  armazenamento. Pode ser um cartão removível (como...
Roteiro da AulaPERSISTÊNCIA ECOMUNICAÇÃO                   Bem vindo ao mundo da mobilidade
PERSISTÊNCIA ECOMUNICAÇÃO
BackupManager     Android desde a API Level 8 permite armazenar dados na Cloud     sem necessidade de banco de dados exter...
BackupManagerCada vez que você alterar um dado do grupo deSharedPreferences, você deve invocar o método dataChanged() dacl...
Exemplo de BackupManager & SharedPreferences
Exemplo de BackupManager (BackupManagerTestActivity)
Exemplo de BackupManager (MyBackupAgent)
Exemplo de BackupManager (AndroidManifest.xml)
Banco de Dados SQLiteAndroid provê suporte completo a bancos de dados SQLite. Osbancos criados serão acessíveis pelo nome ...
SQLiteOpenHelperO construtor de SQLiteOpenHelper recebe quatro        parâmetros,conforme especificado abaixo. A versão do...
SQLiteOpenHelperPode-se, então, obter uma instância dessa subclasse através doconstrutor criado. Com a instância, tem-se a...
SQLiteDatabase - query()As consultas com query() retornam um Cursor para navegação erecebem diversos parâmetros, cada qual...
Exemplo de Banco de Dados SQLite
ExemploBD (BancoActivity)
ExemploBD (DadosController)
ExemploBD (BancoHelper)
Network ConnectionHá, ainda, uma quinta forma de persistência em Android: oarmazenamento remoto. Pode-se usar uma rede (qu...
Android Networking Capabilities
org.apache.http.client.methods.HttpGet                                 Para          adicionar                            ...
org.apache.http.client.methods.HttpPost
URLConnectionjava.net.URL url = new java.net.URL(“http://developer.android.com");java.net.URLConnection uc = url.openConne...
obrigado• e-mail: erisvaldo@yupistudios.com.br• web: http://erisvaldojunior.com• twitter: @erisvaldojunior
Upcoming SlideShare
Loading in...5
×

Desenvolvimento de Apps e Games para Android - Parte 5

3,473

Published on

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,473
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
293
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Desenvolvimento de Apps e Games para Android - Parte 5

  1. 1. Desenvolvimento deApps e Games para AndroidPor Erisvaldo Júnior. Parte 5 (20/09/2011)
  2. 2. RECAPITULANDO…
  3. 3. android.util.LogClasse de Log do Android. Permite armazenar logs de até cincotipos:
  4. 4. LogCatPermite a visualização do Log. Disponível na perspectiva Debug doADT no Eclipse.
  5. 5. Internacionalização2. Organizar os recursos, mapeando as pastas values/ (strings.xml)e res/ para cada região / linguagem suportada.
  6. 6. Internacionalização3. Criar o strings.xml para cada linguagem.
  7. 7. Internacionalização4. Testar a aplicação no emulador.
  8. 8. Como criar uma Splash Screen
  9. 9. Activity em Tela Cheia (Full Screen)
  10. 10. Classe Intent Um objeto Intent é uma mensagem composta por duas partes: action e data.• ACTION – ação a ser realizada. Exemplos: ACTION_VIEW, ACTION_EDIT, ACTION_DIAL, ACTION_MAIN, etc;• DATA – dados a serem operados, geralmente expressado por uma URI (Identificador Uniforme de Recursos). Um objeto Intent pode ser usado de duas formas: Explícita ou Implícita.• EXPLÍCITA – especifica o componente que provê a classe que será executada. Frequentemente não possui informações extras. Usado geralmente para navegar entre activities dentro da aplicação.• IMPLÍCITA – não especifica o componente, apenas fornece as informações e o sistema se encarrega de utilizar o melhor componente para executar esse Intent.
  11. 11. Exemplo Activity Implícita(acessar uma URL no Browser)
  12. 12. Computação Móvel / Pervasiva / Ubíqua
  13. 13. Armazenamento de DadosO Android provê diversas opções para armazenar dados daaplicação. A escolha da melhor opção deve ser feita de acordocom a necessidade: dados privados ou públicos, quantidade deespaço necessário, etc. • Shared Preferences – Armazena dados primitivos em um conjunto de pares do tipo chave – valor; • Internal Storage – Armazena dados privados na memória do dispositivo; • External Storage – Armazena dados públicos na mídia externa de armazenamento; • SQLite Databases – Armazena dados estruturados em um banco de dados privado; • Network Connection – Armazena dados na web com o seu próprio servidor de rede.
  14. 14. Shared Preferences
  15. 15. Internal StoragePara criar e escrever em um arquivo privado para a memóriainterna, chama-se o método openFileOutput() com o nome doarquivo e o tipo de operação, obtendo-se umFileOutputStream. Em seguida, basta escrever com o write() efinalizar com close().Já para ler um arquivo da memória interna, chama-se o métodoopenFileInput() passando o nome do arquivo a ser lido comoparâmetro. Esse método retorna um FileInputStream. Assim, bastaler com read() e finalizar com close().
  16. 16. External Storage Todo dispositivo Android suporta uma mídia externa de armazenamento. Pode ser um cartão removível (como SD Card) ou um espaço de armazenamento interno (não removível). Em ambos os casos, os arquivos podem ser lidos e modificados por outras aplicações ou pelo usuário quando se conecta o dispositivo via USB para transferência de dados.Antes de se trabalhar com o armazenamento externo, deve-se chamar o método getExternalStorageState() para verificar se a mídia está disponível:
  17. 17. Roteiro da AulaPERSISTÊNCIA ECOMUNICAÇÃO Bem vindo ao mundo da mobilidade
  18. 18. PERSISTÊNCIA ECOMUNICAÇÃO
  19. 19. BackupManager Android desde a API Level 8 permite armazenar dados na Cloud sem necessidade de banco de dados externo (perfeito para armazenar SharedPreferences ou arquivos de configuração/informação simples). Como fazer isso com SharedPreferences? Primeiro passo: criar uma chave de acesso em http://code.google.com/android/backup/signup.html• Depois deve-se criar uma classe que herda de BackupAgentHelper e, no onCreate(), criar uma instância de SharedPreferencesBackupHelper;• No AndroidManifest.xml deve-se colocar os atributos android:allowBackups=“true” e android:backupAgent=“NomeDaSuaClasseQueHerdaDeBackupAgentHelper” em <application> e, por fim, adicionar a seguinte tag dentro de <application>:
  20. 20. BackupManagerCada vez que você alterar um dado do grupo deSharedPreferences, você deve invocar o método dataChanged() daclasse BackupManager. E agora? Está feito! Suas SharedPreferences serão armazenadas na nuvem, fazendo com que o usuário não perca a informação mesmo após reinstalar o seu aplicativo.
  21. 21. Exemplo de BackupManager & SharedPreferences
  22. 22. Exemplo de BackupManager (BackupManagerTestActivity)
  23. 23. Exemplo de BackupManager (MyBackupAgent)
  24. 24. Exemplo de BackupManager (AndroidManifest.xml)
  25. 25. Banco de Dados SQLiteAndroid provê suporte completo a bancos de dados SQLite. Osbancos criados serão acessíveis pelo nome para qualquer classe daaplicação, mas não poderão ser acessados externamente. Para se criar um banco de dados, pode-se usar o método openOrCreateDatabase() do contexto. Contudo, a forma recomendada é criar uma subclasse de SQLiteOpenHelper e sobrescrever o método onCreate() para a criação das tabelas.
  26. 26. SQLiteOpenHelperO construtor de SQLiteOpenHelper recebe quatro parâmetros,conforme especificado abaixo. A versão do banco de dados émuito útil para o caso de o banco já existir e precisar seratualizado (através da adição de novas tabelas e/ou colunas, porexemplo).
  27. 27. SQLiteOpenHelperPode-se, então, obter uma instância dessa subclasse através doconstrutor criado. Com a instância, tem-se acesso a dois métodosque retornam um SQLiteDatabase: getWritableDatabase(), parainserção, edição e remoção de dados, e getReadableDatabase(),para consulta de dados. Pode-se executar consultas no SQLite usando o método query() de SQLiteDatabase, que permite a passagem de diversos parâmetros, tais como: tabela a ser consultada, projeção, seleção, colunas, agrupamento e outros. Para consultas complexas, pode-se usar uma instância de SQLiteQueryBuilder. Cada consulta retorna um objeto Cursor que aponta para todos os registros encontrados pela query. É através do objeto Cursor que se navega entre os resultados. Por fim, usam-se os métodos insert() e delete() de SQLiteDatabase para inserção e remoção de registros, respectivamente.
  28. 28. SQLiteDatabase - query()As consultas com query() retornam um Cursor para navegação erecebem diversos parâmetros, cada qual com sua utilidade para aconsulta, conforme explicitado abaixo.
  29. 29. Exemplo de Banco de Dados SQLite
  30. 30. ExemploBD (BancoActivity)
  31. 31. ExemploBD (DadosController)
  32. 32. ExemploBD (BancoHelper)
  33. 33. Network ConnectionHá, ainda, uma quinta forma de persistência em Android: oarmazenamento remoto. Pode-se usar uma rede (quandodisponível) para armazenar e recuperar dados de seus serviçosbaseados na Web. Para realizar operações na rede, usam-se classes dos seguintes pacotes: • java.net; • android.net.
  34. 34. Android Networking Capabilities
  35. 35. org.apache.http.client.methods.HttpGet Para adicionar parâmetros na sua requisição GET, basta inserí-los na URI. Exemplo: HttpGet request = new HttpGet(“http://erisvald ojunior.com/exemploget .php?tipo=2”); client.execute(request);
  36. 36. org.apache.http.client.methods.HttpPost
  37. 37. URLConnectionjava.net.URL url = new java.net.URL(“http://developer.android.com");java.net.URLConnection uc = url.openConnection();BufferedReader br = new BufferedReader( new InputStreamReader (uc.getInputStream() ) ); Faça uma aplicação que exiba o código- fonte de uma página qualquer cujo endereço é digitado em um EditText.
  38. 38. obrigado• e-mail: erisvaldo@yupistudios.com.br• web: http://erisvaldojunior.com• twitter: @erisvaldojunior
  1. ¿Le ha llamado la atención una diapositiva en particular?

    Recortar diapositivas es una manera útil de recopilar información importante para consultarla más tarde.

×