Caysn打印机安卓平台开发包接口说明文档及打印示例程序_20170609

Caysn打印机打印开发包接口说明文档中文版:PrinterLibs_For_Android_zh_CN_20170630

Caysn打印机打印开发包接口说明文档英文版:PrinterLibs_For_Android_en_US_20170630

Caysn打印机打印示例程序(票据打印):Caysn打印机安卓打印示例程序_Sample1_20170609

Caysn打印机打印示例程序(标签打印):Caysn打印机安卓打印示例程序_Sample2_20170609

Caysn打印机打印示例程序(纯图片打印):Caysn打印机安卓打印示例程序_Sample3_20170630

Caysn打印机打印示例程序(页模式打印):Caysn打印机安卓打印示例程序_Sample4_20170609

Caysn打印机打印示例程序(MQTT云打印):Caysn打印机安卓打印示例程序_SampleEPrint_20170627


注意:

示例程序中的Mainfest里有这样一段代码,如果targetSdkVersion设置为23,则安卓6.0系统上无法搜索到蓝牙打印机。

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="19" />

打印效果:


Sample1打印效果



Sample2打印效果



Sample3打印效果



Sample4打印效果



接口说明:


概述

1 PrinterLibsAndroid平台下控制打印机的jar

 

2 PrinterLibs有以下几个公共类

A IO

包括IOBLEPrintingBTPrintingNETPrintingUSBPrintingMemoryPrinting

实现基本的OpenCloseWriteRead等功能

IOCallBack提供了OpenClose的回调接口、便于获取当前的连接状况

 

B 打印类

包括PosLabelPageCanvas

Pos类实现了诸如打印文本、打印条码、打印二维码、打印图片等功能

Label类实现了标签打印功能,需要标签打印机支持

Page类实现了页模式打印功能,需要页模式打印机支持

Canvas类封装了安卓画布函数,使用图片的方式打印,支持所有打印机

 

C 使用方法

Android代码片段:

Pos mPos = new Pos();

BTPrinting mBt = new BTPrinting();

mPos.Set(mBt);

mBt.SetCallBack(this);

 

之后启用异步调用:

public class TaskOpen implements Runnable

{

BTPrinting bt = null;

String address = null;

Context context = null;

public TaskOpen(BTPrinting bt, String address,

Context context)

{

this.bt = bt;

this.address = address;

this.context = context;

}

@Override

public void run() {

// TODO Auto-generated method stub

bt.Open(address,context);

}

}

连接成功之后,调用相应的函数即可打印。


接口

 

IO

 

Write

 

Syntax

public int Write(byte[] buffer, int offset, int count)

 

Parameters

buffer

发送缓冲区

 

offset

从指定偏移开始发送数据

 

count

要发送的字节数

 

Return value

如果写入成功,返回成功写入的字节数、如果写入失败,返回-1

Remarks

IO类的Write函数为空实现,始终返回-1

 


Read

 

Syntax

public int Read(byte[] buffer, int offset, int count, int timeout)

 

Parameters

buffer

接收缓冲区

 

offset

从指定偏移开始存放收到的数据

 

count

要接收的字节数

 

timeout

超时毫秒时间

 

Return value

如果读取成功,返回成功读入的字节数、如果读取失败,返回-1

Remarks

IO类的Read函数为空实现,始终返回-1

 


IsOpened

 

Syntax

public boolean IsOpened()

 

Parameters

 

Return value

如果以连接到打印机,返回true、否则,返回false

Remarks

IO类的IsOpened函数为空实现,始终返回false

 


IOCallBack

 

处理底层连接的4个类:

BLEPrinting BTPrinting NETPrinting USBPrinting

 

Open成功时,会调用OnOpen

Open失败时,会调用OnOpenFailed

Close或异常断开时,会调用OnClose

 

OnOpen

连接成功之后,会调用OnOpen

 

Syntax

void OnOpen()

 

Parameters

 

Return value

 

Remarks


OnOpenFailed

连接失败,会调用OnOpenFailed

 

Syntax

void OnOpenFailed()

 

Parameters

 

Return value

 

Remarks

 


OnClose

连接断开(主动断开或异常中断),会调用OnClose

 

Syntax

void OnClose()

 

Parameters

 

Return value

 

Remarks


BTPrinting

 

蓝牙2.0连接、读写封装

 

Open

连接指定蓝牙打印机

 

Syntax

public boolean Open(String BTAddress, Context mContext)

 

Parameters

BTAddress

蓝牙打印机地址:形如00:11:22:33:44:55

 

mContext

Application Context

 

 

Return value

连接成功,返回true、否则,返回false

 

Remarks

连接成功之后,会调用回调接口OnOpen,连接失败会调用OnOpenFailed


Listen

连接2.0蓝牙打印机(作为主模式,等待打印机主动上连)

 

Syntax

public boolean Listen(String BTAddress, int timeout, Context mContext)

 

Parameters

BTAddress

蓝牙打印机地址:形如00:11:22:33:44:55,暂不使用

 

timeout

等待超时毫秒时间

 

mContext

Application Context

 

Return value

连接成功,返回true、否则,返回false

 

Remarks

连接成功之后,会调用回调接口OnOpen,连接失败会调用OnOpenFailed

 


Close

关闭连接

 

Syntax

public void Close()

 

Parameters

 

Return value

 

Remarks

关闭连接,会调用回调接口OnClose,重复Close不会多次调用回调。

 


Write

通过蓝牙写入数据

 

Syntax

public int Write(byte[] buffer, int offset, int count)

 

Parameters

buffer

发送缓冲区

 

offset

从指定偏移开始发送数据

 

count

要发送的字节数

 

Return value

如果写入成功,返回成功写入的字节数、如果写入失败,返回-1

 

Remarks

 

 


Read

读数据

 

Syntax

public int Read(byte[] buffer, int offset, int count, int timeout)

 

Parameters

buffer

接收缓冲区

 

offset

从指定偏移开始存放收到的数据

 

count

要接收的字节数

 

timeout

超时毫秒时间

 

Return value

如果读取成功,返回成功读入的字节数、如果读取失败,返回-1

Remarks

 


SkipAvailable

忽略缓冲区中的数据

 

Syntax

public void SkipAvailable()

 

Parameters

 

Return value

 

Remarks

 

 


IsOpened

是否已连接

 

Syntax

public boolean IsOpened()

 

Parameters

 

Return value

返回true,表示已经连接、返回false,表示未连接。

 

Remarks

IsOpened函数是建立在心跳的基础上,并不能实时获取连接状态。

如果打印机突然关机,IsOpened可能需要几秒钟,才能返回正确的结果。

如果想确定打印机是否已连接,可以使用POS系列函数中的RTQeuryStatus

 


SetCallBack

设置回调接口

 

Syntax

public void SetCallBack(IOCallBack callBack)

 

Parameters

callBack

回调接口,只有设置了该项,在连接成功或连接断开的时候,才会有回调。

 

Return value

 

Remarks

 

 


BLEPrinting

 

蓝牙4.0连接、读写封装

 

Open

连接指定蓝牙打印机

 

Syntax

public boolean Open(String BTAddress)

 

Parameters

BTAddress

蓝牙打印机地址:形如00:11:22:33:44:55

 

Return value

连接成功,返回true、否则,返回false

 

Remarks

连接成功之后,会调用回调接口OnOpen,连接失败会调用OnOpenFailed


Close

关闭连接

 

Syntax

public void Close()

 

Parameters

 

Return value

 

Remarks

关闭连接,会调用回调接口OnClose,重复Close不会多次调用回调。

 


Write

通过蓝牙写入数据

 

Syntax

public int Write(byte[] buffer, int offset, int count)

 

Parameters

buffer

发送缓冲区

 

offset

从指定偏移开始发送数据

 

count

要发送的字节数

 

Return value

如果写入成功,返回成功写入的字节数、如果写入失败,返回-1

 

Remarks

蓝牙4.0由于标准限制,速度会比2.0慢不少。


Read

读数据

 

Syntax

public int Read(byte[] buffer, int offset, int count, int timeout)

 

Parameters

buffer

接收缓冲区

 

offset

从指定偏移开始存放收到的数据

 

count

要接收的字节数

 

timeout

超时毫秒时间

 

Return value

如果读取成功,返回成功读入的字节数、如果读取失败,返回-1

Remarks

 


SkipAvailable

忽略缓冲区中的数据

 

Syntax

public void SkipAvailable()

 

Parameters

 

Return value

 

Remarks

 

 


IsOpened

是否已连接

 

Syntax

public boolean IsOpened()

 

Parameters

 

Return value

返回true,表示已经连接、返回false,表示未连接。

 

Remarks

IsOpened可能会有延时。

如果想确定打印机是否已连接,可以使用POS系列函数中的RTQeuryStatus

 


SetCallBack

设置回调接口

 

Syntax

public void SetCallBack(IOCallBack callBack)

 

Parameters

callBack

回调接口,只有设置了该项,在连接成功或连接断开的时候,才会有回调。

 

Return value

 

Remarks

 


NETPrinting

 

WIFI底层连接、读写封装

 

Open

连接指定网络打印机

 

Syntax

public boolean Open(String IPAddress, int PortNumber)

 

Parameters

IPAddress

打印机IP地址:可以在打印机自检页中获取,打印机默认IP192.168.1.87

 

PortNumber

打印机端口号:固定为9100

 

Return value

连接成功,返回true、否则,返回false

 

Remarks

连接成功之后,会调用回调接口OnOpen,连接失败会调用OnOpenFailed


Close

关闭连接

 

Syntax

public void Close()

 

Parameters

 

Return value

 

Remarks

关闭连接,会调用回调接口OnClose,重复Close不会多次调用回调。

 


Write

通过网口写入数据

 

Syntax

public int Write(byte[] buffer, int offset, int count)

 

Parameters

buffer

发送缓冲区

 

offset

从指定偏移开始发送数据

 

count

要发送的字节数

 

Return value

如果写入成功,返回成功写入的字节数、如果写入失败,返回-1

 

Remarks

如果无线路由器信号不好,或网络环境不佳,可能会造成卡顿。正常情况下,打印巨量数据都不会有问题。


Read

读数据

 

Syntax

public int Read(byte[] buffer, int offset, int count, int timeout)

 

Parameters

buffer

接收缓冲区

 

offset

从指定偏移开始存放收到的数据

 

count

要接收的字节数

 

timeout

超时毫秒时间

 

Return value

如果读取成功,返回成功读入的字节数、如果读取失败,返回-1

Remarks

 


SkipAvailable

忽略缓冲区中的数据

 

Syntax

public void SkipAvailable()

 

Parameters

 

Return value

 

Remarks

 

 


IsOpened

是否已连接

 

Syntax

public boolean IsOpened()

 

Parameters

 

Return value

返回true,表示已经连接、返回false,表示未连接。

 

Remarks

IsOpened函数是建立在心跳的基础上,并不能实时获取连接状态。

如果打印机突然关机,IsOpened可能需要几秒钟,才能返回正确的结果。

如果想确定打印机是否已连接,可以使用POS系列函数中的RTQeuryStatus

 


SetCallBack

设置回调接口

 

Syntax

public void SetCallBack(IOCallBack callBack)

 

Parameters

callBack

回调接口,只有设置了该项,在连接成功或连接断开的时候,才会有回调。

 

Return value

 

Remarks


USBPrinting

 

USB底层连接、读写封装

 

Open

连接指定USB打印机

 

Syntax

public boolean Open(UsbManager manager, UsbDevice device)

 

Parameters

manager

UsbManager

使用(UsbManager) getSystemService(Context.USB_SERVICE)获得

 

device

UsbDevice

通过枚举USB设备获得UsbDevicemUsbManager.getDeviceList()

 

Return value

连接成功,返回true、否则,返回false

 

Remarks

连接成功之后,会调用回调接口OnOpen,连接失败会调用OnOpenFailed


Close

关闭连接

 

Syntax

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值