Zebra 打印机连接失败“读取失败,套接字可能关闭或超时,读取 ret:-1”

Posted

技术标签:

【中文标题】Zebra 打印机连接失败“读取失败,套接字可能关闭或超时,读取 ret:-1”【英文标题】:Zebra printer connection failed “read failed, socket might closed or timeout, read ret: -1” 【发布时间】:2016-07-15 16:45:48 【问题描述】:

“java.io.IOException: read failed, socket may close or timeout, read ret: -1” 当我尝试通过蓝牙连接我的安卓设备和 Zebra ZD410 打印机时出现异常。

        try 
            mmSocket.connect();
         catch (IOException e1) 
            android.util.Log.e(TAG, e1.toString());

            try 
                android.util.Log.i(TAG, "Trying fallback...");
                mmSocket =(BluetoothSocket) mmDevice.getClass().getMethod("createRfcommSocket", new Class[] int.class).invoke(mmDevice,1);
                mmSocket.connect();
                android.util.Log.i(TAG, "Connected");
             catch (Exception e2) 
                android.util.Log.e(TAG, "Couldn't establish Bluetooth connection!");
                try 
                    mmSocket.close();
                 catch (IOException e3) 
                    android.util.Log.e(TAG, "unable to close() " + mSocketType + " socket during connection failure", e3);
                
                connectionFailed();
                return;
            
        

我已经尝试过使用后备套接字连接的解决方案,但没有帮助。此代码适用于 Epson 打印机和其他一些设备,但不适用于 zebra ZD410 打印机。可能是什么原因?

【问题讨论】:

【参考方案1】:

我收到了 Zebra 支持部门的回复。我的 Zebra 打印机仅支持蓝牙 LE,解决方案是使用具有蓝牙经典功能的打印机。

指示仅蓝牙 LE 打印机的 ZD410 SKU 为 ZD4xxxx-xxx$xxxx,其中 $ 为 E、F、M 或 S。蓝牙 LE 不足以连接 Android 设备并打印到打印机. 为了能够通过蓝牙从 Android 设备连接和打印,打印机需要蓝牙经典功能。 ZD410 的 SKU 表示除蓝牙 LE 外还有蓝牙经典功能是 ZD4xxxx-xxx$xxxx,其中 $ 是 A、B、L 或 W。

【讨论】:

以上是关于Zebra 打印机连接失败“读取失败,套接字可能关闭或超时,读取 ret:-1”的主要内容,如果未能解决你的问题,请参考以下文章

条码扫描枪连接zebra打印机一边扫码一边自动打印无需连接PC电脑

Zebra 打印机 GK420d 呈绿色闪烁一次,但不打印

谁知道怎么用斑马(zebra)打印机打汉字?

使用 ZPL 重新启动 Zebra 打印机

Zebra 标签打印机 TLP 2824 Plus 打印 2 个标签并退出

Zebra638 打印机设置和Wifi无线打印设置