Tudo bom, pessoal?
É o seguinte.
Criei um aplicativo desktop para conexão com celulares utilizando o Bluecove.
Dentro do ambiente Netbeans, o aplicativo funciona perfeitamente.
São realizadas as buscas de dispositivos e do serviço OBEX, e finalmente, é enviado o arquivo.
Entretanto, ao construir o arquivo JAR e executá-lo, nada acontece.
A janela da aplicação é aberta, mas ao clicar no botão de Pesquisa, esta não é executada.
Meu sistema operacional é o XP64.
Como podem ver no trecho de código abaixo, não estou fazendo nada de diferente do que é encontrado no site: http://www.bluecove.org/bluecove/apidocs/overview-summary.html#DeviceDiscovery
public void pesquisarDispositivos()
{
try {
Negocio.getInstancia().getDispositivos().clear();
LocalDevice.getLocalDevice().getDiscoveryAgent().startInquiry(DiscoveryAgent.GIAC, this);
} catch (BluetoothStateException ex) {
Logger.getLogger(Bluetooth.class.getName()).log(Level.SEVERE, null, ex);
}
}
public void deviceDiscovered(RemoteDevice remoteDevice, DeviceClass deviceClass) {
try {
if (deviceClass.getMinorDeviceClass() == 4 || deviceClass.getMinorDeviceClass() == 12)
{
dispositivo.setNome(remoteDevice.getFriendlyName(false));
dispositivo.setEndereco(remoteDevice.getBluetoothAddress());
dispositivo.setDataPesquisa(new Date());
LocalDevice.getLocalDevice().getDiscoveryAgent().searchServices(attrSet, uuidSet, remoteDevice , this);
}
} catch (IOException ex) {
Logger.getLogger(Bluetooth.class.getName()).log(Level.SEVERE, null, ex);
}
}
public void servicesDiscovered(int qtde, ServiceRecord[] servRecord) {
for (int i = 0; i < servRecord.length; i++) {
String url = servRecord[i].getConnectionURL(ServiceRecord.NOAUTHENTICATE_NOENCRYPT, false);
dispositivo.setURL(url);
Negocio.getInstancia().getDispositivos().add(dispositivo);
if (url == null) {
continue;
}
DataElement serviceName = servRecord[i].getAttributeValue(0x0100);
if (serviceName != null) {
System.out.println("service " + serviceName.getValue() + " found " + url);
} else {
System.out.println("service found " + url);
}
}
}
public void serviceSearchCompleted(int arg0, int arg1) {
System.out.println("Service Inquiry completed!");
}
public void inquiryCompleted(int arg0) {
System.out.println("Device Inquiry completed!");
}
Se alguém tiver alguma idéia do que pode estar acontecendo, agradeço bastante!
Abraços
Aécio