Gprinter Android SDK V1.0 使用說明

下載GprinterSDK 

GprinterSDK可在佳博打印機官網下載點擊GprinterSDK,或者聯繫客服人員,便可下載。java

1、將gprinter.jar導入到工程

在eclipse中,將gprinter.jar拷貝到工程的libs文件夾下,。android

2、創建與打印機的通訊

一、 獲取設備的對象

GpDevice mDevice = new GpDevice();

二、註冊接收數據回調函數(此接口是用來接收數據的)

mDevice.registerCallback(this);

三、打開藍牙、USB、網口

藍牙通訊

a、須要獲取藍牙操做權限,在AndroidManifest.xml中,加入如下代碼網絡

<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.BLUETOOTH" />  

b、調用藍牙打開APIeclipse

mDevice.openBluetoothPort(Context context,String addr);

context 爲上下文,addr 爲藍牙地址。例如藍牙地址爲"98:D3:31:40:27:D7",則調用函數

mDevice.openBluetoothPort(MainActivity.this,"98:D3:31:40:27:D7");

USB通訊

a、須要獲取USB操做權限,在AndroidManifest.xml中,加入如下代碼this

<uses-feature android:name="android.hardware.usb.host" />

b、註冊USB設備插入和拔出廣播,在AndroidManifest.xml中,加入如下代碼spa

 <intent-filter>
     <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
 </intent-filter>
 <intent-filter>
      <action android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" />
 </intent-filter>
 <meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" android:resource="@xml/device_filter" />
 <meta-data android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" android:resource="@xml/device_filter" />    

c、device_filter.xml爲USB設備過濾文件,裏面存儲USB設備的PID和VID號,只有匹配的設備USB插入,才能產生USB插入或拔出廣播,device_filter.xml需放在res/xml 文件夾下,文件格式以下,例如Gp2120TL標籤打印機VID 爲26728 PID爲1280code

<?xml version="1.0" encoding="utf-8"?><resources>   
    <usb-device vendor-id="26728" product-id="1280" />
</resources>

d、舊版的Android SDK中是不支持USBhost的,最小SDK版本爲 12,因此需加入xml

android:minSdkVersion="12"

e、調用USB端口打開API對象

mDevice.openBluetoothPort(MainActivity.this);

網口通訊

a、須要獲取網絡操做權限,在AndroidManifest.xml中,加入如下代碼

<uses-permission android:name="android.permission.INTERNET" />

b、調用網口API

例如佳博網絡打印機的初始IP爲192.168.123.100  打印端口爲9100

mDevice.openEthernetPort(「192.168.123.100」, 9100)

四、關閉藍牙、USB、網口

調用關閉端口API

mDevice.closePort();

五、發送數據

當即發送數據API

mDevice.sendDataImmediately(Vector<Byte> data)

將發送數據放在發送緩衝區

mDevice.sendData(Vector<Byte> data)

3、TSC和ESC命令編輯

佳博打印機兼容兩種行業命令標準,5890XIII、58130IVC等票據打印機兼容ESC/POS指令集;

2120T、2120TL等系列標籤打印機兼容TSC指令集;

2120TF則是同時兼容ESC和TSC,模式切換需撥動撥位開關

一、TSC命令調用模板以下,Gprinter SDK中的JavaDoc文件中有TSCCommand API的調用說明

TscCommand tsc = new TscCommand(60,30,0);//設置標籤尺寸寬度、高度、間隙
tsc.addReference(0, 0); //設置原點座標
tsc.addSpeed(SPEED.SPEED1DIV5);//設置打印速度
tsc.addDensity(DENSITY.DNESITY0);//設置打印濃度
tsc.addDirection(DIRECTION.BACKWARD);//設置打印方向
tsc.addCls();//清除打印緩衝區
tsc.addSound(2, 100); tsc.addText(20,20,FONTTYPE.FONT_TAIWAN,ROTATION.ROTATON_0,FONTMUL.MUL_1,FONTMUL.MUL_1,"Hello Gprinter");//繪製文字
tsc.add1DBarcode(20, 50, BARCODETYPE.CODE128, 100, READABEL.EANBEL, ROTATION.ROTATION_180, "12345");//繪製一維條碼
tsc.addPrint(1,1);//加入打印標籤命令
Vector<Byte> Command = new Vector<Byte>(4096, 1024); Command = tsc.getCommand();//獲取上面編輯的打印命令
mDevice.sendDataImmediately(Command);  //發送命令 

二、ESC命令調用模板以下,Gprinter SDK中的JavaDoc文件中有ESCCommand API的調用說明

EscCommand esc = new EscCommand();
esc.addTurnEmphasizedModeOnOrOff(EscCommand.ENABLE.ON);//加粗模式有效 esc.addText("Hello World\n");//打印文字 esc.addUPCA("123456789012");//打印UPCA條碼 esc.addCODE128("Gprinter");//打印CODE128條碼 Vector<Byte> Command = new Vector<Byte>(4096, 1024); Command = esc.getCommand();//得到編輯的命令數據 mDevice.sendDataImmediately(Command);// 發送命令

 在Eclipse下創建好Android工程後調用Gprinter.jar文件,只需按上述步驟操做,您就能夠自由編輯您想要的標籤了

相關文章
相關標籤/搜索