Java 通过蓝牙设置Polar Wearlink和手机之间的连接?

Java 通过蓝牙设置Polar Wearlink和手机之间的连接?,java,android,bluetooth,Java,Android,Bluetooth,我目前正在开发一款android应用程序。 我必须通过蓝牙将Polar Wearlink腰带与手机配对(或连接) 我尝试了多个网站或主题,但每次我尝试一些东西,我都有一个力量关闭 这是我最后一次尝试: public class BluetoothConnectionManager { // Context private Context c; // Bluetooth adapter private BluetoothAdapter btAdapter; // Bluetooth devi

我目前正在开发一款android应用程序。 我必须通过蓝牙将Polar Wearlink腰带与手机配对(或连接)

我尝试了多个网站或主题,但每次我尝试一些东西,我都有一个力量关闭

这是我最后一次尝试:

public class BluetoothConnectionManager {

// Context
private Context c;

// Bluetooth adapter
private BluetoothAdapter btAdapter;

// Bluetooth device
private BluetoothDevice device;

// Dialog
private AlertDialog dialogDetected;

public BluetoothConnectionManager(Context cont, BluetoothDevice dev, BluetoothAdapter ba){
    c = cont;
    device = dev;
    btAdapter = ba;

}


public void start() {
    ConnectThread ct = new ConnectThread(device);
    ct.run();
}

private class ConnectThread extends Thread {
    private final UUID MY_UUID = UUID.randomUUID();
    private final BluetoothSocket mmSocket;
    private final BluetoothDevice mmDevice;

    public ConnectThread(BluetoothDevice device) {
        BluetoothSocket tmp = null;
        mmDevice = device;
        try {
            tmp = device.createRfcommSocketToServiceRecord(MY_UUID);
        } catch (IOException e) { }
        mmSocket = tmp;
    }

    public void run() {
        btAdapter.cancelDiscovery();
        try {
            String tag = "text";
            Log.d(tag ,"FORCE CLOSE HERE");
            mmSocket.connect();
        } catch (IOException connectException) {
            try {
                mmSocket.close();
            } catch (IOException closeException) { }
            return;
        }
        manageConnectedSocket(mmSocket);
    }

    public void cancel() {
        try {
            mmSocket.close();
        } catch (IOException e) { }
    }
}
这是日志

  • 01-19 20:53:11.617:E/AndroidRuntime(7362):致命异常:主
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):java.lang.NullPointerException
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):在android.os.parceluid.toString(parceluid.java:72)上
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):在安卓系统上,企业版BluetoothUtils.IsSocketAllowedBySecurity策略(BluetoothUtils.java:95)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):在android.bluetooth.BluetoothSocket.connect(BluetoothSocket.java:221)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):位于com.breath.bluetoothmodule.BluetoothConnectionManager$ConnectThread.run(BluetoothConnectionManager.java:62)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):位于com.breath.bluetoothmodule.BluetoothConnectionManager.start(BluetoothConnectionManager.java:40)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):在com.breath.bluetoothmodule.BluetoothHandler$1$1.onClick(BluetoothHandler.java:75)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):在com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:168)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):位于android.os.Handler.dispatchMessage(Handler.java:99)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):在android.os.Looper.loop(Looper.java:137)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):位于android.app.ActivityThread.main(ActivityThread.java:4514)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):位于java.lang.reflect.Method.Invokenactive(本机方法)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):在java.lang.reflect.Method.invoke(Method.java:511)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:993)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:760)
  • 01-19 20:53:11.617:E/AndroidRuntime(7362):在dalvik.system.NativeStart.main(本机方法)

从logcat发布错误stacktrace。我将大胆猜测。。。这是因为我的UUID是
null
。如果您没有忽略catch块中的异常,它可能会提到它。为什么我现在总是得到01-19 21:25:17.402:d/BluetoothUtils(11813):IsSocketAllowedBySecurity策略开始:设备null?我没有力量接近!