使用测试打印机: deli 热敏票据打印机 [DL-581PW] 其接收gbk,不接收utf-8

系统: android

使用插件1: 蓝牙基础插件 bluetoothle

                  地址: https://ionicframework.com/docs/v3/native/bluetoothle/

使用插件2: 蓝牙插件 Bluetooth Serial

                  地址: https://ionicframework.com/docs/v3/native/bluetooth-serial/

插件说明: ionic提供的蓝牙插件有三种,bluetoothle / Bluetooth Serial / ble , 这边测试的打印机不是ble,是经典蓝牙,所以只能使用以上两个插件 (更多详情请百度蓝牙的种类bt 与 ble)

问题: 使用bluetoothSerial.write写入数据的时候,该插件目前只支持数字与字母, 要打印小票的话必须支持中文,所以后台人员对插件进行了修改,修改为可支持中文

demo app的地址,可以先预览测试一下

链接: https://pan.baidu.com/s/1AxWresGwdlWBBYoKrB4LWA       提取码: v2ug 

如果效果可以,请继续往下浏览====================>

所有的资源下载地址: 

    1] 完整项目源码

    2] demo apk

    3] 优化后可支持中文的 bluetoothSerial插件(后续需要操作到)

 

下面是对资源如何使用的说明

进入项目,添加依赖: npm install

因为插件修改过,可能安装依赖的时候会报找不到(配置信息的问题),需要重新载入修改后的插件

先删除原有旧插件: ionic cordova plugin remove cordova-plugin-bluetooth-serial

把资源中的bluetoothSerial插件放置在你本地,然后根据你本地实际位置,重新载入该插件:

ionic cordova plugin add '/home/wang/桌面/对 比蓝牙/blueApp/BluetoothSerial-master'

'/home/wang/桌面/对 比蓝牙/blueApp/' 是我本地的地址,你要改成你本地这个插件的地址

最后重新打包: ionic cordova run android

 

到这里就完成初步,在完成打印这一步,demo的逻辑是前端直接传一个对象json,到bluetoothSerial这个插件中去,所有的打印配置信息以及打印模板都是配置在这个插件中的,按照自己的业务不同,你们是需要修改bluetoothSerial的打印配置的

这里注意:每一次修改完这个插件后,直接跑是没有作用的,必须先把这个插件拷贝出来,在外面修改好了,然后删掉原有的插件,然后再重新载入,这样插件才会重新编译(这个步骤可以看上一步,一样的操作)

我们主要修改的目录在BluetoothSerial-master/src/android/com/megster/cordova下,后续的操作需要配合后台人员,因为两份文件都是java文件,在BluetoothSerialService.java中你可以搜索到printTemplate一个方法,就可以看到里面配置的打印模板,修改主要修改这里,这里的字段名也可以对应修改成你传入的json对象对应的字段,到这里就完成了(这一步其实主要还是靠后台去修改就行)

所有的资源下载地址: 

 

    1] 完整项目源码

    2] demo apk

    3] 优化后可支持中文的 bluetoothSerial插件(后续需要操作到)