Milagre
Este blog deixou de ser mantido, mas o autor continua escrevendo aqui. Não deixe de assinar o novo feed!
Há um bom tempo uso um celular Sony Ericsson K300i. Embora ele esteja fora de linha - e já estava quando o comprei - ainda assim é um bom celular. Quer dizer, tirando a tela (que mais parece o visor de um relógio de pulso) o resto compensa, principalmente quando consideramos o preço do negócio.
Tá bom, eu sei que tem iPhone, iDon’tCare e outras coisas moderninhas, mas ainda não estou disposto a gastar dinheiro com tudo isso, uma vez que o meu modesto celular me atende bem. (sou um dos únicos que usam o celular para - pasme - atender e fazer ligações).
Enfim… apesar de tudo, o que mais me chateava é que o infeliz do celular não funcionava no Linux. Se eu precisasse transferir algum arquivo de/para o celular, eu precisava usar o Windows. Gastei meses e meses procurando alguém que soubesse como fazer para que o bendito funcionasse no Linux, mas não encontrei ninguém nem nada que pudesse dar jeito naquela situação. Cheguei até a trocar algumas vezes de distribuição para ver se conseguia alguma coisa. Obviamente, foi tudo uma grande perda de tempo e fiquei tão nervoso com isso que acabei deixando quieto. ![]()
Quando tudo parecia perdido…
Após alguns meses, agora que estou usando o novo Ubuntu, versão 7.0.4, resolvi tentar novamente, só para ver o que acontecia. Para minha surpresa, ao plugar o cabo - um DCU-11 USB-Serial que comprei no MercadoLivre - o sistema o reconheceu automaticamente, carregou os drivers e criou um device em /dev/ttyUSB0. Fiquei de cara!! Aquela era A chance de tentar fazer esse trem funcionar!
Depois de testar alguns programas, eis que finalmente consegui fazer com que o OpenOBEX (implementação open source do protocolo OBEX) - especificamente o obexftp - conversasse com o celular. Venho usando o obexftp com sucesso há alguns dias… quer dizer, existem alguns problemas, mas nada que realmente impeça seu uso.
Como sou um cara preguiçoso (no bom sentido, claro), acabei ficando enjoado de ter que abrir o terminal e digitar no braço os comandos necessários para a transferência de arquivos. Por isso, resolvi criar uma aplicação em Swing para atuar como front-end do obexftp (eu com saudades do Swing?).
O trabalho ainda está no início, mas deixo aqui algumas screenshots para que você possa ver como está ficando:
Tá ficando legalzinho, não? Por isso que eu digo que Swing não é (mais) feio… dá pra montar telas impecáveis sem baixar nenhum Look and Feel mirabolante nem nada do tipo. Por exemplo, se você procura ícones para a sua aplicação, recomendo o site iconlet, que disponibiliza uma porrada de ícones gratuitos. (mas esse assunto de como criar aplicações “agradáveis” em Swing fica para um outro post…)
Embora este projeto ainda esteja no início, eu estou quase terminando de escrever as classes de comunicação com o obexftp e a janela de configuração (mostrada nas screenshots). Já consigo usar 80% das funcionalidades do obexftp através de chamadas aos métodos que escrevi… me resta agora trabalhar na interface com o usuário.
Obviamente eu disponibilizarei o código-fonte da aplicação, que é bastante interessante por mostrar, entre outras coisas, como funciona a comunicação inter-processos, processamento de arquivos XML com JDOM e técnicas de programação Swing em geral.
Aguarde novidades!
UPDATE 1: duas novas screenshots adicionadas;
UPDATE 2: a instalação de aplicações e jogos simplesmente funciona!
UPDATE 3: Veja este post para mais detalhes.
Foto por: Google Images.
Tags: aplicação, celular, comunicação, frontend, java, linux, obexftp, open source, openobex, projeto, swing, ubuntu

5 de julho de 2007 às 2:01 am
Adorei o iDon’tCare.
Se eu tivesse me tocado, esse teria sido o título pro post.
Valeu.
5 de julho de 2007 às 11:38 am
Cara… muito bom!
Tava tentando conectar o meu nokia e sem sucesso. Nao conhecia o obexftp. Agora, aguardo ancioso a primeira release do seu projeto.
Vai dar gosto usar o celular no linux com essa facilidade.
Flw
5 de julho de 2007 às 1:49 pm
Software livre! Software livre!
5 de julho de 2007 às 2:04 pm
E aí Lucas, beleza??
Dá uma olhada no site do OpenOBEX… tem uma página que mostra quais são os modelos Nokia compatíveis. Se seu celular estiver relacionado lá, então já era!
Mais detalhes sobre outros modelos e marcas suportados pelo OpenOBEX/obexftp podem ser encontrados aqui.
[]s
5 de julho de 2007 às 2:09 pm
Fala Vitor!
Todo o crédito vai para o Ubuntu! Se não fosse por ele, provavelmente já teria usado o cabo do celular para amarrar a borracha que a minha mãe usa para lavar o quintal.
5 de julho de 2007 às 2:59 pm
Olhei no site sim… o modelo do meu celular está lá!
Alias, a lista de dispositivos compativeis é grande.
Flw
8 de julho de 2007 às 10:35 pm
O mundo deveria ter mais “preguiçosos” feito você.
valeuz…
8 de julho de 2007 às 10:42 pm
hehehe
30 de outubro de 2007 às 9:26 am
Baralho! Finalmente encontrei alguém que tem um k300 e também usa Linux! E melhor ainda, escreveu um aplicativo para ele! Vou testar seu aplicativo e dar um feedback que é a única coisa que posso fazer já que não sou desenvolvedor.
Valeu!
30 de outubro de 2007 às 7:07 pm
Mesmo o K300 sendo chato de se trabalhar (é preciso ficar reconectando o cabo USB de tempos em tempos), o programa ainda quebra um galho.
Até mais!