Galera estou precisando montar um comando de update em minha aplicação, algo como um botão e ao pressionar ele vai se conectar com a base de dados e baixar a ultima atualização do sistema, então deverá sair do programa depois de baixado e executar a instalação, assim instalando por cima a versão mais nova.
Minha idéia é fazer o seguinte, baixar o arquivo de instalação e guardar em algum lugar do celular com a biblioteca fileconnection, em seguinda executar este arquivo.
Minha duvida é, como eu faço pra executar este arquivo depois de eu ter baixado a atualização? esta minha idéia esta correta? alguem tem uma sugestão melhor?
entenda que o meu sistema está em desenvolvimento, então vai ser necessario a instalação dele nos celulares de tempos em tempos, o problema é ficar instalando toda vez que algo for mudado pq tem varios funcionarios utilizando este sistema, emtão minha idéia é fazer algo facil, apenas apertando um botão da aplicação e fazendo o upload.
[quote=Shakall]Galera estou precisando montar um comando de update em minha aplicação, algo como um botão e ao pressionar ele vai se conectar com a base de dados e baixar a ultima atualização do sistema, então deverá sair do programa depois de baixado e executar a instalação, assim instalando por cima a versão mais nova.
Minha idéia é fazer o seguinte, baixar o arquivo de instalação e guardar em algum lugar do celular com a biblioteca fileconnection, em seguinda executar este arquivo.
Minha duvida é, como eu faço pra executar este arquivo depois de eu ter baixado a atualização? esta minha idéia esta correta? alguem tem uma sugestão melhor?
entenda que o meu sistema está em desenvolvimento, então vai ser necessario a instalação dele nos celulares de tempos em tempos, o problema é ficar instalando toda vez que algo for mudado pq tem varios funcionarios utilizando este sistema, emtão minha idéia é fazer algo facil, apenas apertando um botão da aplicação e fazendo o upload.[/quote]
A solução para o problema de atualização é simples:
Use o método platformRequest da classe MIDlet passando o endereço HTTP onde está o teu aplicativo.
O celular saberá através da análise da URL que terá que navegar até este endereço, o que acabará fazendo com que o processo de download se inicie, gerando algumas perguntas para o usuário que deverá responder, isto devido a sua aplicação não ser assinada digitalmente (suponho).Uma vez ele respondendo, o processo de download se inicia e a aplicação é instalada por cima da que existe.
[quote=boone][quote=Shakall]Galera estou precisando montar um comando de update em minha aplicação, algo como um botão e ao pressionar ele vai se conectar com a base de dados e baixar a ultima atualização do sistema, então deverá sair do programa depois de baixado e executar a instalação, assim instalando por cima a versão mais nova.
Minha idéia é fazer o seguinte, baixar o arquivo de instalação e guardar em algum lugar do celular com a biblioteca fileconnection, em seguinda executar este arquivo.
Minha duvida é, como eu faço pra executar este arquivo depois de eu ter baixado a atualização? esta minha idéia esta correta? alguem tem uma sugestão melhor?
entenda que o meu sistema está em desenvolvimento, então vai ser necessario a instalação dele nos celulares de tempos em tempos, o problema é ficar instalando toda vez que algo for mudado pq tem varios funcionarios utilizando este sistema, emtão minha idéia é fazer algo facil, apenas apertando um botão da aplicação e fazendo o upload.[/quote]
A solução para o problema de atualização é simples:
Use o método platformRequest da classe MIDlet passando o endereço HTTP onde está o teu aplicativo.
O celular saberá através da análise da URL que terá que navegar até este endereço, o que acabará fazendo com que o processo de download se inicie, gerando algumas perguntas para o usuário que deverá responder, isto devido a sua aplicação não ser assinada digitalmente (suponho).Uma vez ele respondendo, o processo de download se inicia e a aplicação é instalada por cima da que existe.
[/quote]
posso fazer isso da aplicação mesmo correto? ele mesmo irá tratar o fechamento da aplicação e a instalação do arquivo baixado?
[quote]A solução para o problema de atualização é simples:
Use o método platformRequest da classe MIDlet passando o endereço HTTP onde está o teu aplicativo.
O celular saberá através da análise da URL que terá que navegar até este endereço, o que acabará fazendo com que o processo de download se inicie, gerando algumas perguntas para o usuário que deverá responder, isto devido a sua aplicação não ser assinada digitalmente (suponho).Uma vez ele respondendo, o processo de download se inicia e a aplicação é instalada por cima da que existe.
[/quote]
Mas aí ele fará o download sempre que eu iniciar a minha aplicação ou apenas se a versão que estiver na URL for mais recente? Se for assim como ele verifica a versão… através do JAD?
[quote=JavaES][quote]A solução para o problema de atualização é simples:
Use o método platformRequest da classe MIDlet passando o endereço HTTP onde está o teu aplicativo.
O celular saberá através da análise da URL que terá que navegar até este endereço, o que acabará fazendo com que o processo de download se inicie, gerando algumas perguntas para o usuário que deverá responder, isto devido a sua aplicação não ser assinada digitalmente (suponho).Uma vez ele respondendo, o processo de download se inicia e a aplicação é instalada por cima da que existe.
[/quote]
Mas aí ele fará o download sempre que eu iniciar a minha aplicação ou apenas se a versão que estiver na URL for mais recente? Se for assim como ele verifica a versão… através do JAD?[/quote]
Sempre fará, afinal a chamada a platformRequest está sempre sendo feita !
Quem tem que controlar quando platformRequest deve ser chamada é você, através de uma consulta usando servlet etc…enfim, tem-se que montar uma infraestrutura de controle de versão. Não dá trabalho…
Se quiser incrementar a bagaça, pode ficar sabendo quando instalam sua aplicação no aparelho colocando uma URL para ser chamada pelo celular assim que a instalação ocorre. Para isto coloque o seguinte no seu JAD:
A questão aqui é que você terá que gerar um JAD para cada aplicação disponibilizada (automatizar este processo),pois o parâmetro codigo teria que ter um valor diferente para cada aparelho onde a aplicação fosse instalada. Enfim, te dei a idéia, se achar interessante, vá mais fundo…