Já se encontra nas “bancas” virtuais a mais recente edição da Revista PROGRAMAR, a 34ª.
Assim nesta edição trazemos até si, como artigo de capa, um artigo sobre desenvolvimento para Android para conhecer melhor algumas técnicas de programação para esta plataforma.
Nos últimos tempos a mobilidade tem estado na ordem do dia. Qualquer pessoa quer ter acesso a qualquer informação em qualquer sitio e a qualquer momento. Quando algo acontece a partilha da informação é imediata. Sejam noticias, mails, o post do amigo ou o restaurante próximo tudo tem de estar acessível aqui e agora.
As empresas que mais têm levado a esta mudança de mentalidade são a Apple, com os dispositivos iPhone, iPod e iPad, e a Google, com os dispositivos Android.
Torna-se obrigatório a qualquer empresa estar representada nestas duas plataformas. Desde o Twitter ou Facebook, até às revistas e jornais. Inclusivamente há casos que fizeram o percurso contrário como a Rovio com o já mundialmente famoso “Angry Birds”.
Para tal é também necessário haver quem faça estas aplicações. Na edição 23 já foi dada uma introdução de desenvolvimento para Android, do ambiente e da estrutura de uma aplicação. Vamos agora, para perceber um pouco melhor como é feito o desenvolvimento, ver um exemplo prático de uma simples aplicação de tarefas.
Acesso aos dados
Qualquer aplicação, esta precisa de dados. São os dados que são manipulados, guardados ou mostrados ao utilizador por forma a trazer uma mais valia.
Em Android existem várias formas de guardar e ler dados:
- Preferências – Existe uma classe que permite guardar e ler tipos primitivos. Estes valores são guardados no formato chave-valor. Estes valores são automaticamente guardados pela plataforma. Isto significa que, mesmo que o processo seja morto, quando a aplicação for aberta novamente os valores guardados estarão lá.
- Memória interna – É possível guardar ficheiros na memória interna do telefone. Estes ficheiros são acessíveis apenas pela aplicação que os criou e são apagados caso a aplicação seja apagada.
- Memória externa – Qualquer sistema Android permite guardar ficheiros numa memória externa. Seja um cartão SD ou uma memória interna aparte da memória do sistema. Os ficheiros aqui guardados podem ser acedidos por qualquer aplicação do dispositivo. Podem também ser acedidos através de um computador quando este está ligado por USB, com a partilha de ficheiros activa.
- Ligação de rede – A framework inclui também classes que permitem que a aplicação aceda à internet, seja para aceder ou para guardar a informação.
- Base de dados – O sistema Android permite acesso a bases de dados SQLite. As bases de dados criadas por uma aplicação são acessíveis apenas por essa aplicação. É disponibilizado um conjunto de APIs que permitem abstrair do facto de haver uma base de dados durante o desenvolvimento da aplicação.A maneira mais fácil de guardar a informação, no nosso caso, é na base de dados. Permite-nos garantir de que a informação fica guardada mesmo que a aplicação tenha algum problema e evita que tenhamos de estar a desenvolver parsers para acesso à informação.
Visto que é uma aplicação muito simples vamos apenas ter uma tabela. Nesta tabela iremos guardar um ID, uma tarefa e a sua descrição.
A base de dados de uma aplicação é criada no momento de instalação. Ao instalar o sistema vai procurar uma classe que herde de SQLiteOpenHelper e executa o método onCreate. Aqui colocamos o nosso código para criar toda a estrutura de dados. Esta classe tem também o método onUpgrade que é usado para actualizar uma BD. Ou seja, se a aplicação já estiver instalada no dispositivo e for colocada uma versão mais recente este método permite alterar apenas aquilo que for necessário na estrutura da BD, permitindo manter os dados que lá existem.
Nesta 34ª edição pode ainda encontrar os seguintes artigos:
- Geração de Números Aleatórios – Parte 4 (Augusto Manzano)
- Introdução ao HTML5 (Bruno Pires)
- Dependency Injection com Ninject (Pedro Tavares)
- Módulos em Pascal (Igor Nunes)
- Aquisição e inspecção de dados em Python (Fernando Júnior e Amanda Varela)
- Criação de um jogo em XNA – Parte I (Sérgio Ribeiro)
- SEO: Search Engine Optimization – Introdução (Miguel Lobato)
- Visual (NOT) Basic – XML Literals (Jorge Paulino)
- Enigmas de C#: Qual é a minha base (Paulo Morgado)
- Análise ao Livro – CSS 3 (Fernando Martins)
- Microsoft PowerPivot como ferramenta de BI (João Pinto)
- Análise do Tráfego de Rede – Facebook (Rita Antunes Peres)
- Entrevista ao Professor Pedro Ribeiro
E em parceira com as comunidade NetPonto e PtCoreSec:
- BizTalk Transformar arquivos de texto (flat files em XML) (Sandro Pereira)
- Segurança na WEB (Parte 1)