Android Bluetooth プリンターで 1 つの奇妙な問題に直面しています。初めてプリンターデバイスに接続しようとすると、次の問題に直面しています
BluetoothAdapter: getBluetoothService() called with no BluetoothManagerCallback
java.io.IOException: read failed, socket might closed or timeout, read ret: -1
at android.bluetooth.BluetoothSocket.readAll(BluetoothSocket.java:738)
at android.bluetooth.BluetoothSocket.readInt(BluetoothSocket.java:750)
at android.bluetooth.BluetoothSocket.connect(BluetoothSocket.java:375)
次のコードを使用してデバイスをプリンターに接続しています
Thread connectThread = new Thread(new Runnable() {
@Override
public void run() {
try {
boolean gotuuid = btDevices.getItem(position)
.fetchUuidsWithSdp();
UUID uuid = btDevices.getItem(position).getUuids()[0]
.getUuid();
mbtSocket = btDevices.getItem(position)
.createRfcommSocketToServiceRecord(uuid);
mbtSocket.connect();
} catch (IOException ex) {
ex.printStackTrace();
runOnUiThread(socketErrorRunnable);
try {
mbtSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
mbtSocket = null;
} finally {
runOnUiThread(new Runnable() {
@Override
public void run() {
finish();
}
});
}
}
});
connectThread.start();
注: 上記のコード ブロックをデバッグしようとすると、プリンターに接続され、印刷できるようになります。通常モードのみの問題。
誰でも同じ問題について何か考えがあります。