java通过蓝牙在Polar Wearlink和手机之间建立连接?
我目前正在开发一款安卓应用程序。 我必须通过蓝牙将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):在安卓上。操作系统。帕切鲁德。toString(parceluid.java:72)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在安卓上。秒。企业蓝牙乌贼。isSocketAllowedBySecurityPolicy(BluetoothUtils.java:95)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在安卓上。蓝牙。蓝牙插座。connect(BluetoothSocket.java:221)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在com。呼吸的空气蓝牙模块。BluetoothConnectionManager$ConnectThread。运行(BluetoothConnectionManager.java:62)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在com。呼吸的空气蓝牙模块。蓝牙连接管理器。开始(BluetoothConnectionManager.java:40)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在com。呼吸的空气蓝牙模块。BluetoothHandler 1美元1美元。onClick(BluetoothHandler.java:75)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在com。安卓内部的应用程序。AlertController$ButtonHandler。handleMessage(AlertController.java:168)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在安卓上。操作系统。处理程序。dispatchMessage(Handler.java:99)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在安卓上。操作系统。活套。循环(Looper.java:137)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在安卓上。应用程序。活动线程。main(ActivityThread.java:4514)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在爪哇。朗。反思。方法invokenactive(本机方法)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在爪哇。朗。反思。方法调用(Method.java:511)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在com。安卓内部的操作系统。ZygoteInit$MethodandArgscaler。run(ZygoteInit.java:993)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在com。安卓内部的操作系统。合子体。main(ZygoteInit.java:760)
- 01-19 20:53:11.617:E/AndroidRuntime(7362):在达尔维克。系统本土艺术。主(本机方法)
共 (0) 个答案