
10
Maio 29, 2008Nem parece, mas passaram dez dias desde as últimas notícias publicadas sobre o projecto! Mais vale tarde do que nunca, e como tal aqui ficam os últimos pormenores sobre o trabalho desenvolvido, e ponto de situação.
Aproxima-se a data para a realização dos testes, e como tal estamos a ultimar a versão que irá ser testada. Importa referir que, apesar disso, ainda será produzido trabalho até ao prazo final.
O novo estilo gráfico para a aplicação do Android, muito debatido e refinado, encontra-se concluído (num outro post serão mostrados todos os elementos gráficos produzidos). Os diversos elementos (ícones, o novo menu, os novos botões e listas, ícones para o topo, ícon para o drop-down, background) encontram-se já implementados, faltando apenas incluir os ícones que irão acompanhar a descrição de cada elemento dos diversos menus.
Os ecrãs existentes estão a ser reformulados, e em alguns deles incluídos novos elementos de interacção tais como caixas drop-down e checkboxes.
Quanto à aplicação, foi desenvolvido e concluído um extenso trabalho, com resultados muito positivos.
Todas as funções necessárias, previamente definidas, foram trabalhadas/refinadas ao longo das passadas duas semanas, e todas programadas/implementadas do lado Web. Foram necessárias ainda novas funções, para o Android, que de igual modo se encontram já implementadas.
Uma vez que nos encontramos a desenvolver um Website, que necessita também ele de comunicar com a BD (e através dos mesmos recursos de que o Android dispõe), foram também escritas funções especialmente nesse sentido. Ainda estão a ser desenvolvidas algumas delas, um trabalho mais extenso do que inicialmente previsto (devido ao grande número, e à quantidade de lógica envolvida em cada uma delas).
Do lado do Android, e ainda respeitante à comunicação com o servidor, foram implementados métodos dinâmicos para acesso a essas funções, numa perspectiva totalmente modular. Estes diversos “apêndices” permitem à aplicação em si comunicar com o servidor e com a BD interna que se encontra no Android. A forma de implementação permite comunicar da mesma forma para qualquer tipo de função. Foram tidos vários cuidados (após aprendizagem de algumas técnicas) para libertar o máximo de recursos possíveis na comunicação com a BD.
As funções do lado do Android foram totalmente re-escritas para multi-utilizador. No entanto, não foram ainda implementadas todas as que assegurarão uma total sincronização entre o dispositivo e o servidor web. Este processo, embora adiado, não foi completamente colocado de parte, sendo que foi até já discutida a provável solução de implementação.
O sistema de autenticação (login) encontra-se implementado, sem o qual o utilizador se encontra impedido de utilizar a aplicação. Os dados de autenticação são obtidos através do registo no website. Este processo verifica correctamente o número de telefone (cartão SIM) do dispositivo, e faz a sincronização dos dados de registo.
A alteração do estado/descrição foi ligeiramente modificada, para minimizar o número de comunicações feitas com o servidor (uma vez que estas acarretam um delay). Para além disso, a alteração do estado possui agora bidireccionalidade, para que seja possível ordenar a lista de estados pelos mais utilizados - funcionalidade que também se encontra implementada.
Ainda respeitante a esta parte, está também concluído o processo de filtragem de estados (através do qual o utilizador poderá decidir que estados estão disponíveis para escolha).
A lista telefónica encontra-se preparada para multi-utilizador, sendo que ao adicionar um contacto, é verificado se o número associado pertence a outro utilizador. Se tal se verificar, é automaticamente descarregado o estado desse contacto (apesar de termos um sistema que contempla gestão de permissões, estas encontram-se abertas, por defeito, nesta fase).
O estado passa a ser actualizado a cada vez que é aberta a lista telefónica, e o bug que existia no protótipo, e que impedia mais de 3 actualizações, encontra-se resolvido.
Houve também algum trabalho sobre a gestão de ecrãs em memória, afim de garantir que cada ecrã que já não é necessário é correctamente “destruído”. Isto permite-nos um maior controle sobre o funcionamento da aplicação, e libertar o máximo de recursos possível. Foi possível também resolver a questão de atribuição do “focus” de um botão, permitindo por exemplo que após edição de um contacto que está no fundo da lista, esta seja mostrada de novo com o cursor nesse mesmo elemento (evitando que o utilizador tivesse de navegar sobre todos os contactos de novo).
Por implementar, durante os próximos dias, estão os ecrãs de gestão de grupos, filtragem de contactos por estado ou grupo, e a funcionalidade de bloquear contactos. Estes foram considerados aspectos menos relevantes, e como tal adiados algum tempo. A função de bloquear contactos nem era, inicialmente, alvo de desenvolvimento; no entanto, e como tentámos preparar a BD, o mais possível, para implementação de soluções futuras, decidimos acrescentar já esta funcionalidade.
Embora a sincronização, e questões adicionais já mencionadas (processamento com o servidor em paralelo, etc.), não sejam provavelmente incluídas nesta versão beta, todas as restantes funcionalidades e todos os ecrãs, com um layout totalmente revisto, estarão seguramente implementadas na versão que apresentaremos.
Relativamente a avanços no desenvolvimento do website, também será colocado um post mais pormenorizado.
Mais notícias para breve!