斑马打印机配置网络/打印标签过程记录

项目需求

斑马便携式打印机ZR328连接网络和蓝牙,在cordova+vue混合开发的apk项目中能够ping通打印机并打印ZPL标签。

打印机配置网络IP

1、 下载安装斑马官方提供的配置工具Zebra Printer Setup Utility, 安装地址,可下载android/windows/ipad/iphone不同操作系统对应的程序,本文以android 为例。

2、安装成功后,用数据线连接打印机和Android,打开Printer Setup,会自动搜索连接的打印机,如果没有搜索,就点击"发现打印机"查找。

3、查找到对应的打印机后,点击连接

4、打印机连接成功后,显示如下图,点击"连接设置"。

5、点击"无线连接",即出现无线连接的配置页面。

6、在《无线连接》页面,"无线连接"的开关是"开"。

主机名默认是打印机的名字,可以编辑。

IP寻址协议,如果已经有确定的IP值,就选"永久",一般情况下,没有确定的IP分配给打印机,就选"DHCP",点击"下一步"。

7、《无线连接 / 客户端ID》页面,直接点击"下一步"。

8、《无线连接 / 详细信息》页面中,ESSID就是要连接的网络名称,安全模式选"WPA PSK",无线宽带选"ALL",点击"下一步"。

9、《无线连接 / 安全》页面,输入要连接的网络的密码,点击"下一步"

10、《无线连接 / 应用设置》页面,点击"应用"。

11、打印机配置网络成功后,显示以下提示,点击"重新启动",打印机会重新启动。

12、重新启动打印机后,网络连接应该已正常,打印机上显示绿色的网络图标。查看打印机的IP地址,点击下图中的标注位置

点击 "连接"标签页,显示连接详情,再点击"无线连接"中的"高级信息",就能看到IP详情了

14、 打印机配置固定IP,我们只知道连接了网络,并不知道具体的IP是多少,因此需要固定打印机的IP,重复以上的的步骤到上步骤5,点击无线连接,进入到《无线连接》页面,IP寻址协议选择"永久",其它不变,点击下一步。

15、《无线连接 / 静态IP》中,应该默认填充了,如果没有填充,就重复步骤12查找详情中的IP,输入到该页面中,点击下一步,后续的步骤和前面一样。

ping打印机

安装cordova插件 cordova-plugin-ping,检查打印机连接状态

复制代码
let printerIp = "192.168.**.**"; // 打印机IP
let ipList = [{query: printerIp, timeout: 5, retry: 2,version:'v4'}];
let p = new Ping();
p.ping(ipList, (res)=>{
if (res[0].response.status == 'success') {
	// ping 成功
} else {
	// ping 失败
}
}, (error) => {
  // ping失败
});

wifi打印标签

安装cordova插件thermal-printer-cordova-plugin

复制代码
ThermalPrinter.printFormattedText({
      type: 'tcp', // wifi打印
      address: "192.168.**.**",   // 打印机IP
      port: 9100, // 固定值
      id: 192.168.**.**: 9100", // id可以随便写 
      text: "hello world", // 打印文本,可以是zpl指令
    }, async () =>  {
    	// 打印成功
    }, error => {
        // 打印失败
        console.error(error);
    });

查找蓝牙打印机

如果需要蓝牙打印,请先在移动设备上开启蓝牙,并且在蓝牙中和打印机配对。

查找插件依然是thermal-printer-cordova-plugin

复制代码
ThermalPrinter.listPrinters({type: 'bluetooth'}, printers => {
        console.log(printers);
        if (printers && printers.length > 0) {
        // 找到蓝牙
        // printers[0].address 在蓝牙打印时作为id
        console.log(printers[0].address);
        } else {
        // 没有找到蓝牙
        }
      }, error => {
      	//  查找蓝牙打印机失败
      });

蓝牙打印标签

打印插件依然是thermal-printer-cordova-plugin

复制代码
ThermalPrinter.printFormattedText({
      type: 'bluetooth',
      id: "48:55:34:45", // 这里的id是蓝牙的mac地址,即printers[0].address
      text: "hello world", // 文本,可以是zpl指令
    }, async () =>  {
        // 蓝牙打印成功
    }, error => {
        蓝牙打印失败
    });

遇到的问题及解决

1、网络打印时ping正常,ThermalPrinter.printFormattedText报错,Unable to connect to TCP device.,原因是:默认的timeout设置的太短。解决方法:ThermalPrinterCordovaPlugin.java中,return new TcpConnection(address, port); 改为return new TcpConnection(address, port, 5000); // 时间可以自己定,单位是ms

2、如果用cordova插件ping打印机时失败,报错信息中有status="timeout",可能是打印机网络断了,在cmd中ping 打印机确认网络正常。

相关推荐
SHENGWEI胜为1 小时前
二层网络广播风暴如何排查?从交换机接口计数器到 STP 拓扑变化分析
网络
艾芯微科技2 小时前
HR911130C|汉仁 HANRUN 集成变压器千兆 RJ45 网口参数、电路、PCB 布线、替代与采购避坑
网络·单片机·嵌入式硬件·集成测试·51单片机
日常筹谋记2 小时前
工业厂房 TPO 防水卷材:技术需求如何传导到配方层面?
运维·网络·html
玄芯散人5 小时前
【元婴·106】I2C总线:地址冲突、Clock Stretching、总线死锁怎么破
网络
YH_Analytics5 小时前
2026 年增亮膜(DBEF)行业市场格局深度解析
大数据·网络
dk_tjy6 小时前
迪康网络运维故障自愈的自动化闭环技术路径分析
运维·网络·自动化
万联WANFLOW7 小时前
让分散的设备像在同一张局域网里:企业组网技术解析
运维·网络·网络安全·智能路由器
QY_Research_8 小时前
全球智能交通系统物联网市场规模及CAGR14.2%深度分析
大数据·网络·人工智能·物联网·制造
梦帮科技8 小时前
量子纠缠网络与量子隐形传态攻防:量子中继器信道串扰、纠缠态保真度降解与量子路由劫持
开发语言·网络·人工智能·算法·自动化·php
山东孙燕姿9 小时前
维修工单的转派与协同:两个人一起上
大数据·运维·服务器·网络·人工智能