boysna
19-01-2007, 22:03
Ciao ragazzi, tutto bene? Io ho un piccolo problema col Bluetooth in Java. Mi sto avvicinando avvicinando alle librerie javax.bluetooth da poco e ho un problema semplice: devo fare il discovery dei dispositivi bluetooth ma mi rileva sempre lo stesso dispositivo, anche se si trova spento.
Vi posto la classe con il main:
import javax.bluetooth.DiscoveryAgent;
import javax.bluetooth.BluetoothStateException;
import javax.bluetooth.LocalDevice;
import javax.bluetooth.RemoteDevice;
public class MyTest {
public static void main(String[] args) {
DiscoveryAgent agent;
int i=0;
while(i!=1){
try {
MyDiscoveryListener myDiscovery = new MyDiscoveryListener();
agent = LocalDevice.getLocalDevice().getDiscoveryAgent();
boolean complete = agent.startInquiry(DiscoveryAgent.PREKNOWN, myDiscovery);
System.out.println("Stato inquiry: "+ complete);
i++;
}
catch (Exception e) {}
}
}
}
Mentre questo è la classe MyDiscoveryListener:
import javax.bluetooth.DeviceClass;
import javax.bluetooth.DiscoveryListener;
import javax.bluetooth.RemoteDevice;
import javax.bluetooth.ServiceRecord;
public class MyDiscoveryListener implements DiscoveryListener {
public void deviceDiscovered(RemoteDevice remoteDevice, DeviceClass arg1) {
System.out.println("remote device discovered:"+remoteDevice.getBluetoothAddress());
}
public void inquiryCompleted(int arg0) {
System.out.println("Inquiry completed");
}
public void serviceSearchCompleted(int arg0, int arg1) {
// TODO Auto-generated method stub
}
public void servicesDiscovered(int arg0, ServiceRecord[] arg1) {
// TODO Auto-generated method stub
}
}
Qualcuno sa dirmi cosa non va? Aiutatemi please...
Vi posto la classe con il main:
import javax.bluetooth.DiscoveryAgent;
import javax.bluetooth.BluetoothStateException;
import javax.bluetooth.LocalDevice;
import javax.bluetooth.RemoteDevice;
public class MyTest {
public static void main(String[] args) {
DiscoveryAgent agent;
int i=0;
while(i!=1){
try {
MyDiscoveryListener myDiscovery = new MyDiscoveryListener();
agent = LocalDevice.getLocalDevice().getDiscoveryAgent();
boolean complete = agent.startInquiry(DiscoveryAgent.PREKNOWN, myDiscovery);
System.out.println("Stato inquiry: "+ complete);
i++;
}
catch (Exception e) {}
}
}
}
Mentre questo è la classe MyDiscoveryListener:
import javax.bluetooth.DeviceClass;
import javax.bluetooth.DiscoveryListener;
import javax.bluetooth.RemoteDevice;
import javax.bluetooth.ServiceRecord;
public class MyDiscoveryListener implements DiscoveryListener {
public void deviceDiscovered(RemoteDevice remoteDevice, DeviceClass arg1) {
System.out.println("remote device discovered:"+remoteDevice.getBluetoothAddress());
}
public void inquiryCompleted(int arg0) {
System.out.println("Inquiry completed");
}
public void serviceSearchCompleted(int arg0, int arg1) {
// TODO Auto-generated method stub
}
public void servicesDiscovered(int arg0, ServiceRecord[] arg1) {
// TODO Auto-generated method stub
}
}
Qualcuno sa dirmi cosa non va? Aiutatemi please...