0

Bluetoothプリンターにデータを送信するAndroidアプリケーションがあります。最初の印刷ではすべて問題ありませんが、最初の印刷後にエラーが発生します

エラー :

IOException : read failed socket might closed or timeout read

これは私のプリンターコードです:

    BluetoothAdapter mBluetoothAdapter = BluetoothAdapter
                    .getDefaultAdapter();

            BluetoothDevice secilenYazici = mBluetoothAdapter
                    .getRemoteDevice(sharedPrefs.getString("PRINTER_MAC", ""));

            BluetoothSocket socket = secilenYazici
                    .createRfcommSocketToServiceRecord(MY_UUID);
            mBluetoothAdapter.cancelDiscovery();


            socket.connect();// exception throwing from this line after first pring.

            OutputStream stream = socket.getOutputStream();


// getting printable raw block from webview source.

            String[] rawBlocks = lastHTML.split("<!--RawPrint");
            String rawEnd = rawBlocks[1].split("-->")[0];
            byte[] byteArray = rawEnd.getBytes();


            stream.write(byteArray);



            stream.close();
            socket.close();

クローズ後に接続が失われたと思いますが、ソケットはこのコードで既に作成されているので、クローズする必要があると思います。

4

1 に答える 1

0

この投稿が役立つと思います。

問題は、コードが完全ではないということです。そのため、問題の原因を特定するのは非常に困難です。

また、Android 4.2 で実行されている Samsung デバイスが Bluetooth で問題を抱えていることをどこかで見たと思います。修正されたかどうかはわかりません。

于 2013-09-12T19:34:48.800 に答える