j2se + j2me + bluetooth

Ola pessoal…

Estou estudando desenvolvimento de aplicativos j2se que comunicam com aplicativos que possuem tecnologia bluetoopha… =]

comecei a estudar a API JSR-82…
recentemente li um tópico aqui no guj que para desenvolver aplicativos j2se necessita de uma tal api bluecove…
não encontrei nenhum material de exemplo que implemente com esta api…

Estou procurando um exemplo simples que localiza os dispositivos bluetooth a partir do desktop…
para confirmar se minha configuração de ambiente esta tudo certo…
e dar prosseguimento no estudo…

encontrei o seguinte exemplo na net…

import java.io.IOException;
import java.util.Vector;
import javax.bluetooth.*;

/**
 * Minimal Device Discovery example.
 */
public class RemoteDeviceDiscovery {

    public static final Vector/*<RemoteDevice>*/ devicesDiscovered = new Vector();

    public static void main(String[] args) throws IOException, InterruptedException {

        final Object inquiryCompletedEvent = new Object();

        devicesDiscovered.clear();

        DiscoveryListener listener = new DiscoveryListener() {

            public void deviceDiscovered(RemoteDevice btDevice, DeviceClass cod) {
                System.out.println("Dispositivo " + btDevice.getBluetoothAddress() + " encontrado");
                devicesDiscovered.addElement(btDevice);
                try {
                    System.out.println("     nome " + btDevice.getFriendlyName(false));
                } catch (IOException cantGetDeviceName) {
                }
            }

            public void inquiryCompleted(int discType) {
                System.out.println("Device Inquiry completed!");
                synchronized(inquiryCompletedEvent){
                    inquiryCompletedEvent.notifyAll();
                }
            }

            public void serviceSearchCompleted(int transID, int respCode) {
            }

            public void servicesDiscovered(int transID, ServiceRecord[] servRecord) {
            }
        };

        synchronized(inquiryCompletedEvent) {
            boolean started = LocalDevice.getLocalDevice().getDiscoveryAgent().startInquiry(DiscoveryAgent.GIAC, listener);
            if (started) {
                System.out.println("wait for device inquiry to complete...");
                inquiryCompletedEvent.wait();
                System.out.println(devicesDiscovered.size() +  " device(s) found");
            }
        }
    }

}

esta apresentando o seguinte erro…

Exception in thread "main" javax.bluetooth.BluetoothStateException
        at com.sun.kvem.jsr082.bluetooth.LocalDeviceImpl.<init>(LocalDeviceImpl.java:185)
        at javax.bluetooth.LocalDevice.getLocalDevice(LocalDevice.java:94)
        at testebluetooth.RemoteDeviceDiscovery.main(RemoteDeviceDiscovery.java:51)

nas minhas libraries esta toda as bibliotecas j2me e adicionei a parte o bluecove.jar que encontrei na net, e o intelbth.dll na pasta \windowns\system32

alguem pode me enviar um exemplo simples de localização de dispositivos???
ow me explicar se falta alguma configuração???

e aproveito esse topico para levantar a seguinte questão…

quais tipos de dados eu consigo enviar a um dispositivo bluetooth a partir do desktop sem implementar um aplicativo para o dispositvo movel como celular e pda???

desde jah agradeço a atençao da comunidade guj…

Bom eu fiz o meu TCC com bluetooth tanto no J2ME quanto no J2SE, para desktop alem da api bluecove voce de ter um pendrive de bluetooth e um programa de bluetooth instalado no seu PC.
O que que esta dando é que ele nao encontra o dispositivo bluetooth.

Caso voce esteja fazendo uma aplicação para celular recomendo utilizar o netbeans 6.0 pois ele ja esta com a ultima versão do WTK (wireless tool kit) que emula bluetooth.

Recomendo voce estudar um pouco de Threads pois será necessario! :slight_smile:

[quote=lucifeler]para desktop alem da api bluecove voce de ter um pendrive de bluetooth e um programa de bluetooth instalado no seu PC.

O que que esta dando é que ele nao encontra o dispositivo bluetooth.

Recomendo voce estudar um pouco de Threads pois será necessario! :)[/quote]

obrigado pela atenção lucifeler

estou com o pen drive sim…
quando plugo ele no pc abre uma interface nativa…
creio q seja do proprio winxp… atraves desta consigo encontrar os dispositivos que estao no alcance…

precisa instalar outro software pra que o exemplo acima funcione???
caso sim vc pode me indicar um…

estou ferrado nao manjo nada sodre threads… =/

alguem pode me indicar algum material de estudo sobre api bluecove…

abrço

Humbertim2, quando eu desenvolvi com bluetooth eu usei um software chamado bluesolei, é um programinha que procura por dispositivos com bluetooh e os cadastra.

Bom eu tive alguns problemas com o pendrive da d-link não consegui fazer o meu sistema reconhece-lo ai usei um generico que comprei na Santa Ifigenia :lol:. Esse generico veio com esse programa quando instalei o sistema começou a reconhecer.

… estou com o usb bluetooth v1.2 COMPLIANT…

nao consigo fazer este exemplo rodar… =/
instalei o software, BlueAuditor, fiz troca de arquivos entre o cel e o pc…
mais o exemplo nao funfa…

hellp…

Procure por um software chamado bluesoleil, com ele consegui fazer o meu projeto reconhecer o pendrive de bluetooth.

kra agradeço de novo pela atenção…

instalei o bluesoleil conforme vc me falou e o erro persiste…
soh nao estou entendendo porq com esse software vc diz que funcionaria…
a chamada ao metodo:

LocalDevice.getLocalDevice().getDiscoveryAgent().startInquiry(DiscoveryAgent.GIAC, listener);

nao deveria retornar se a lista de dispositivos ao alcance…
toda aplicação vou depender de outro software instalado???

valeww pela ajuda…

OBS:. Apesar de nao ter funcionado gostei muito da interface do bluesoleil… quem quiser pra interagir com os bluetootha da vida… tai o link…

http://rs210.rapidshare.com/files/58892841/BlueSoleil.v5.0.5.b178.rar

kra agradeço de novo pela atenção…

instalei o bluesoleil conforme vc me falou e o erro persiste…
soh nao estou entendendo porq com esse software vc diz que funcionaria…
a chamada ao metodo:

LocalDevice.getLocalDevice().getDiscoveryAgent().startInquiry(DiscoveryAgent.GIAC, listener);

nao deveria retornar se a lista de dispositivos ao alcance…
toda aplicação vou depender de outro software instalado???

valeww pela ajuda…

OBS:. Apesar de nao ter funcionado gostei muito da interface do bluesoleil… quem quiser pra interagir com os bluetootha da vida… tai o link…

http://rs210.rapidshare.com/files/58892841/BlueSoleil.v5.0.5.b178.rar

[/quote]

Meu dongle Bluetooth veio com o CD do BlueSoleil.Ele foi comprado no MercadoLivre em 2006 se não me engano.
Rodei o exemplo via webstart no site do Bluecove e funfou sem problemas.

O ideal é sempre comprar marcas recomendadas por outros que disseram que funciona. Foi o que fiz. Antes de comprar o meu, sai procurando qual era o normalmente encontrado no mercado brasileiro, o software que o acompanhava,etc…deu na cabeça que era o BlueSoleil e depois foi só achar um lugar na internet (MercadoLivre) que vendesse um dongle cujo software que acompanha fosse o BlueSoleil.

Não tenho do que me arrepender. Já é o meu 2o celular com Bluetooth e continuo usando sem problemas.Uma mão na roda.Se tivesse comprado cabo, teria que comprar um novo por causa do novo cel.

rodei aquele exemplo via webstart no site do Bluecove e funcionou aqui tbm…
estou tentando rodar o exemplo acima… que peguei no site bluecove tbm…
usando o netbeans 6.0…

LocalDevice.getLocalDevice().getDiscoveryAgent().startInquiry(DiscoveryAgent.GIAC, listener);  

Humbertim quebre esse codigo da seguinte forma

//se der erro nessa parte é porque o seu sistema nao esta encontrando o pen drive de bluetooth
LocalDevice localDevice = LocalDevice.getLocalDevice();

DicoveryAgent agente = localDevice.getDiscoveryAgent();

// o segundo parametro 'listener' deve ser uma classe que implemente a inteface DiscoveryListener.
agente.startInquiry(DiscoveryAgent.GIAC, listener);

Ola lucifeler…

finalmente consegui…
meu bluecove.jar estava corrompido… atualizei este ponto jar com o indicado na revista webmobile e rodou…
link para o arquivo -> https://sourceforge.net/project/showfiles.php?group_id=114020

inclusive nessa revista tem um exemplo de uma comunicação entre um aplicativo j2se com um midlet em jme…
ainda nao tentei fazer… mais sera meu proximo passo…

minha duvida agora lucifeler e a seguinte…

tem como eu enviar algum tipo de informaçao para o celular sem q seja necessario desenvolver um midlet em jme??..
tipo eu conseguiria escrever em uma caixa de texto “hello world” e enviar para meu celular via bluetooth sem q eu desenvolva uma aplicaçao no meu celular???

valew o apoio meu velho… precisando estamos ai…

abraço…

estou pesquisando sobre bluetooth e envio de mensagens para os celulares. Achei interessante sua pergunta:

Pessoal, tem como enviar uma mensagem como se fosse SMS?

Lógico que tem !

Estando o bluetooth do aparelho ligado, você pode enviar um contato da sua agenda para o celular destino. Viu, não precisou programar nada para fazer o envio.

Então você consegue enviar uma “pa” de conteudo assim…contatos, arquivos, ringtones,etc.

Se isto não te satisfaz, terá que colocar a mão na massa e programar.Não há como fugir.

Humberto, me add no msn, tb estou fazendo meu tcc neste assunto, meu objetivo é controlar algumas funções do windows pelo celular via bletooth…
kqjames@hotmail.com
[]´s

[quote=boone]Lógico que tem !

Estando o bluetooth do aparelho ligado, você pode enviar um contato da sua agenda para o celular destino. Viu, não precisou programar nada para fazer o envio.

Então você consegue enviar uma “pa” de conteudo assim…contatos, arquivos, ringtones,etc.

Se isto não te satisfaz, terá que colocar a mão na massa e programar.Não há como fugir.[/quote]

Alguém aí sabe como enviar um SMS ao celular? consegui conectar usando o bluetooth do meu PC no celular, conectar que digo é saber que ele existe, mais como posso enviar um SMS pra ele?, ou um vídeo por exemplo? heheh

VALEU GALERA, só cara que manja mesmo aqui nesse forum. Muito bom.

[quote=rafael_keller][quote=boone]Lógico que tem !

Estando o bluetooth do aparelho ligado, você pode enviar um contato da sua agenda para o celular destino. Viu, não precisou programar nada para fazer o envio.

Então você consegue enviar uma “pa” de conteudo assim…contatos, arquivos, ringtones,etc.

Se isto não te satisfaz, terá que colocar a mão na massa e programar.Não há como fugir.[/quote]

Alguém aí sabe como enviar um SMS ao celular? consegui conectar usando o bluetooth do meu PC no celular, conectar que digo é saber que ele existe, mais como posso enviar um SMS pra ele?, ou um vídeo por exemplo? heheh

VALEU GALERA, só cara que manja mesmo aqui nesse forum. Muito bom.[/quote]

Alguém aí sabe como passar um arquivo ou SMS do PC para o Celular via BlueTooth? estou usando o OBEX e o BlueSolei, mais só consigo achar o serviço, estou parado nesse ponto :(, alguém aí tem algum exemplo ou alguma luz para ajudar? :wink:

[quote=rafael_keller][quote=boone]Lógico que tem !

Estando o bluetooth do aparelho ligado, você pode enviar um contato da sua agenda para o celular destino. Viu, não precisou programar nada para fazer o envio.

Então você consegue enviar uma “pa” de conteudo assim…contatos, arquivos, ringtones,etc.

Se isto não te satisfaz, terá que colocar a mão na massa e programar.Não há como fugir.[/quote]

Alguém aí sabe como enviar um SMS ao celular? consegui conectar usando o bluetooth do meu PC no celular, conectar que digo é saber que ele existe, mais como posso enviar um SMS pra ele?, ou um vídeo por exemplo? heheh

VALEU GALERA, só cara que manja mesmo aqui nesse forum. Muito bom.[/quote]

E aí galera alguém já viu isso em algum lugar? mandar arquivo do PC para o celular sem que tenha um client??? Putz estou desesperado já… o mundo perfeito seria enviar SMS mais arquivos já seria um Plus animal, parece que pra mandar SMS teria que ter operadora e tal, bom não sei, se alguém mais entendido no assunto puder ajudar. VALEU!!!