更新记录

1.0.0(2021-03-31)

首次发布


平台兼容性

Android Android CPU类型 iOS
适用版本区间:4.4 - 11.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 ×

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


Android 精臣 标签 打印插件

1. 精臣打印机,连接设置.

  • 必须要打开手机蓝牙,并且需要先配对打印机蓝牙成功后,才能连接打印机。

2. 在需要使用的页面中引入插件

const plug=uni.requireNativePlugin("Html5app-Jcprinter");

3. 插件方法介绍

方法名 说明
getAllPrinter 获取所有已配的打印机设备
connectPrinter 连接打印机
state 打印机连接状态
disconnect 断开打印机
printer 打印标签

4. getAllPrinter | 获取所有已配的打印机设备

plug.getAllPrinter({name:"B11"},ret=>{

JSON.stringify(ret);

});
  • 参数说明: name => 打印机设备前缀名称,可以过滤掉其他不需要的设置.
  • 返回结果, 数组
{
"list":[
    {
    "address":"DC:0D:30:3D:08:DC",
    "name":"B11-90487050"
    }
    ],
"code":"0"
}

5. connectPrinter | 连接打印机

    plug.connectPrinter({name:"B11-90487050"},ret=>{

    });
  • 参数说明:name => 精臣打印机型号名称
  • 返回结果
{"msg":"正在连接打印机...","code":1}
{"msg":"打印机已连接","code":2}
{"msg":"打印机连接超时,请检查后再试","code":3}
{"msg":"打印机名称不能为空","code":-1}
{"msg":"打印机连接失败","code":-2}

6. state | 打印机连接状态

plug.state(ret=>{

});
  • 返回结果
{"msg":"打印机已连接","code":0}
{"msg":"打印机已断开","code":-1}

7. disconnect | 断开打印机

plug.disconnect(ret=>{

});
  • 返回结果
{"msg":"打印机已断开","code":0}

8. printer | 打印标签

plug.printer({data:""},ret=>{

});
  • 参数说明:data => 是一个打印数据的数组.

打印示例

  • 打印文字
    //添加文字
    line={};
    line.text="HTML5+混合APP开发社区"; //文字内容
    line.rotation=0; //旋转角度:0/90/180/270
    line.width=50;  //文本的宽度 单位:mm
    line.height=80; //文本的高度 单位:mm
    line.top=5; //距离顶部的距离 单位:mm
    line.left=0; //距离左边的距离 单位:mm
    line.fontHeight=3; //文字的大小高度设置
    line.fontStyle=0; //文字的样式:0=>正常,1=>粗体,2=>斜体,3=>粗斜体,4=>下划线,8=>删除线
    line.align="left"; // left=>靠左,center=>居中,right=>靠右
    data.push(line); //每添加一个,代表一行字
  • 打印图片
    //添加图片
    line={};
    line.image="http://www.html5-app.com/gprinter.png"; //支持网络图片和本地路径图片
    line.top=12; //距离顶部的距离 单位:mm
    line.left=5; //距离左边的距离 单位:mm
    line.width=15; //图片宽度 单位:mm
    line.height=15;  //图片高度 单位:mm
    line.rotation=0; //旋转角度:0/90/180/270
    data.push(line);
  • 打印一维码/条型码
    //添加条型码
    line={};
    line.barcode="2019563352660"; //条型码内容
    line.top=40; //距离顶部的距离 单位:mm
    line.left=0; //距离左边的距离 单位:mm
    line.type="CODE128"; 条型码类型
    line.height=10; //条型码高度 单位:mm
    line.width=25; //条型码宽度 单位:mm
    line.textHeight=3; //可见文字大小高度 
    line.rotation=0; //旋转角度:0/90/180/270
    data.push(line);
  • 打印二维码
    line={};
    line.qrcode="ddddddd"; //二维码内容
    line.top=50; //距离顶部的距离 单位:mm
    line.left=10; //距离左边的距离 单位:mm
    line.width=15; //二维码大小 单位:mm
    line.rotation=0; //旋转角度:0/90/180/270
    data.push(line);
  • 其他画线
     line={};  //画一个矩形
    line.drawRectangle={left:10,top:10,width:20,height:3,lineWidth:1};
    data.push(line);

    lineWidth => 边线大小

    line={};  //画一个带有圆角的矩形
    line.drawRoundRectangle={left:0,top:15,width:20,height:3,cornerWidth:1,cornerHeight:1,lineWidth:1};
    data.push(line);

    cornerWidth =>圆角宽度大小, cornerHeight =>圆角高度大小

    line={};  //画一个圆形
    line.drawEllipse={left:0,top:18,width:10,height:10,lineWidth:1};
    data.push(line);

    line={};  //画直线/斜线, 两个坐标点,决定一条直线
    line.drawLine={x1:0,y1:22,x2:35,y2:18,lineWidth:1};
    data.push(line);

    line={};  //填充画一个矩形
    line.fillRectangle={left:10,top:10,width:20,height:3};
    data.push(line);

    line={};  //填充,以指定的线宽,绘制圆角矩形框
    line.fillRoundRectangle={left:0,top:15,width:20,height:3,cornerWidth:1,cornerHeight:1};
    data.push(line);

    line={};  //填充 以指定的线宽,绘制圆
    line.fillEllipse={left:0,top:18,width:10,height:10};
    data.push(line);

    line={};  //填充 打印填充圆形
    line.fillCircle={left:0,top:18,radius:10};
    data.push(line);

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

本插件,本身不会采集任何用户信息。

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问