Desenvolvi um aplicativo simples de consulta a um arquivo de texto compilado em conjunto com o .class e descarreguei ele do meu notebook para dois aparelhos Sony Ericsson (K850i e K660i) e para um Nokia 5610. Reparei que a busca que eu efetuava no Nokia era da ordem de 5x mais rápido que os da Sony… alguém sabe o que pode estar acontecendo?
Durante o projeto não importei nenhum tipo de recurso, apenas desenvolvi o algoritmo, compilei e enviei para os celulares.
Desenvolvi um aplicativo simples de consulta a um arquivo de texto compilado em conjunto com o .class e descarreguei ele do meu notebook para dois aparelhos Sony Ericsson (K850i e K660i) e para um Nokia 5610. Reparei que a busca que eu efetuava no Nokia era da ordem de 5x mais rápido que os da Sony… alguém sabe o que pode estar acontecendo?
Durante o projeto não importei nenhum tipo de recurso, apenas desenvolvi o algoritmo, compilei e enviei para os celulares.[/quote]
É de se esperar que aparelhos de modelos diferentes e até fabricantes diferentes, demonstrem desempenho diferentes, afinal, são produtos que não necessariamente compartilham das mesmas implementações Java, podem possuir diferenças sutis quanto a produtos utilizados na fabricação dentre outros.
Imagina que o celular A e B sejam do fabricante JJJJ e o C seja do fabricante XXXX.
O celular B embora lançado após o A, pode ter desempenho inferior ao primeiro devido a sair de fábrica com uma implementação Java “mexida” para que pudesse ser acomodada a capacidade do aparelho, quanto a processador e armazenamento sua “ROM”.
Já o celular C pode ser melhor do que o A e o B por conter em sua implementação Java, em alguns pontos muito usados por programadores, melhorias significativas em suas rotinas que permitem que mesmo não se gastando muito com o produto, ainda sim o desempenho do celular não fica tanto pra traz.
Enfim, cada fabricante possui suas estratégias e é livre para decidir como vai ser o celular frente as necessidades dos usuários.
Assim como os micros possuem ferramentas de benchmark, os celulares também não ficam fora disto e servem para justamente se fazer comparações que levem a você tomar a decisão na hora de escolher o modelo A ou B ou C.
2 aparelhos do mesmo fabricante e mesmo modelo, podem ter desempenhos diferentes para a tua aplicação.
Sabe pq ? Pq tem versões de firmware diferentes !
Uma versão mais nova tende a conter correções de funcionamento do S.O. do aparelho, JVM,etc, que podem dar resultado ligeiramente ou muito rapidamente em contrapartida ao celular que está com uma versão mais antiga (bugada).
Então, se quer extrair o máximo do celular, procure mantê-lo com a última versão do firmware instalada.
Como fazer isto ?
Procurando no site do fabricante por um método de atualização.
No caso de Nokias, existe um software chamado Nokia Software Updater que faz a atualização pra vc na boa.
Procurando uma assistência técnica.
Eles sempre contém estas versões mais novas e podem com segurança fazer este trabalho. O custo deste procedimento eu não sei.