私は現在、Androidアプリに取り組んでいます。Polar Wearlink ベルトを Bluetooth 経由で携帯電話にペアリング (または接続) する必要があります。
私は複数のウェブサイトやトピックを試しましたが、何かを試すたびに強制的に閉じられます.
これが私の最後の試みです:
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.ParcelUuid.toString(ParcelUuid.java:72)
- 01-19 20:53:11.617: E/AndroidRuntime (7362): android.sec.enterprise.BluetoothUtils.isSocketAllowedBySecurityPolicy (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.invokeNative(ネイティブ メソッド) で
- 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(ネイティブ メソッド) で