
Última reunião com os orientadores e algumas alterações
Março 27, 2008Na última reunião começámos a discutir, em conjunto com os orientadores, algumas das questões acerca da sincronização de informação entre o Android e o Servidor Web, partindo do princípio que o Android englobaria duas bases de dados distintas – a lista telefónica do próprio Android, e uma BD auxiliar que armazenaria os estados; este foi, aliás, o modelo apresentado no final do primeiro módulo da disciplina de Projecto.
Ao analisar parte do código de uma das aplicações-teste que havíamos feito, que diz respeito à leitura de informação da lista do Android (neste caso particular, a leitura dos nomes armazenados na colecção de contactos), descobrimos que o Android já possui alguns mecanismos para o armazenamento de estados – embora limitados em quantidade. Existem inclusivamente campos para armazenar variáveis auxiliares, relativas à sincronização entre Android e Servidor Web, incluindo a data/hora de actualização.
Para além destes mecanismos existem bastantes outros, nenhum deles utilizado até agora por nenhuma versão do SDK (que inclui apenas uma muito básica lista de contactos). A natureza Open-Source desta plataforma, e o próprio concurso aberto para o desenvolvimento de aplicações para o Android, levam-nos a concluir que o Google disponibilizou um elevado número de ferramentas (não utilizadas pelo SDK) para permitir uma maior liberdade/facilidade no desenvolvimento de aplicações. A existência destes mecanismos aumenta, no entanto, a probabilidade de já existirem outros grupos de projecto a desenvolver aplicações semelhantes.
É, também, ainda incógnita se o Google pretende implementar/disponibilizar a plataforma de Servidor Web que comunicará com o Android – neste momento não existe qualquer informação sobre este ponto. Resta-nos, assim, prosseguir com o plano inicial de projectar toda essa parte, com base no servidor / webservices do Sapo, assegurando essa comunicação / armazenamento / actualização dos estados.
A alteração que esta descoberta implica é, no fundo, a eliminação da BD auxiliar no Android, sendo que serão utilizados os próprios campos da lista de contactos para assegurar os diversos estados (cinco distintos no total é o que a plataforma suporta), os motivos para os estados, e a sincronização da informação com o Servidor Web. A nível de interacção com o utilizador, deixa de existir a cópia da lista de contactos, mantendo-se apenas a possibilidade de alterar o “link” para a nossa lista de contactos. A nível de interacção da própria aplicação, deixa de existir a necessidade de manter um registo dos IDs dos contactos, seus estados, flag de sincronização, etc., num local distinto no próprio Android.
A documentação de Projecto, nomeadamente o Fluxograma/Mapa de Navegação, será actualizada durante os próximos dias para reflectir estas modificações, e também outras ideias discutidas na última reunião; entre outras, será modificada a forma como os contactos são notificados da alteração do estado de um utilizador. Foi também decidido que os dois passos principais a executar/atingir são, respectivamente: a criação de uma aplicação para o Android que permita escolher um estado (a partir de uma lista pré-definida); e o desenvolvimento do sistema de comunicação com o Servidor por forma a poder observar numa página Web esse estado.