下载GprinterSDK 

GprinterSDK可在佳博打印机官网下载点击GprinterSDK,或者联系客服人员,即可下载。

一、将gprinter.jar导入到工程

在eclipse中,将gprinter.jar拷贝到工程的libs文件夹下,。

二、建立与打印机的通信

1、 获取设备的对象

GpDevice mDevice = new GpDevice();

2、注册接收数据回调函数(此接口是用来接收数据的)

mDevice.registerCallback(this);

3、打开蓝牙、USB、网口

蓝牙通信

a、需要获取蓝牙操作权限,在AndroidManifest.xml中,加入以下代码

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

b、调用蓝牙打开API

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中,加入以下代码

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

b、注册USB设备插入和拔出广播,在AndroidManifest.xml中,加入以下代码

 <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为1280

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

d、旧版的Android SDK中是不支持USBhost的,最小SDK版本为 12,所以需加入

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)

4、关闭蓝牙、USB、网口

调用关闭端口API

mDevice.closePort();

5、发送数据

立即发送数据API

mDevice.sendDataImmediately(Vector<Byte> data)

将发送数据放在发送缓冲区

mDevice.sendData(Vector<Byte> data)

三、TSC和ESC命令编辑

佳博打印机兼容两种行业命令标准,5890XIII、58130IVC等票据打印机兼容ESC/POS指令集;

2120T、2120TL等系列标签打印机兼容TSC指令集;

2120TF则是同时兼容ESC和TSC,模式切换需拨动拨位开关

1、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); //发送命令

2、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文件,只需按上述步骤操作,您就可以自由编辑您想要的标签了

Gprinter Android SDK V1.0 使用说明的更多相关文章

  1. Gprinter Android SDK V2.0 使用说明

    佳博特约经销商,此店购买的打印机问题优先解决哟 https://shop107172033.taobao.com/index.htm?spm=2013.1.w5002-9520741823.2.V1p ...

  2. Gprinter Android SDK V2.1 使用说明

    下载:http://download.csdn.net/download/abc564643122/8872249

  3. Gprinter Android SDK V2.1.4 使用说明

    佳博打印机Android的SDK开发包,已更新到Gprinter Android SDK V2.1.4. IOS的SDK开发包更新为GprinterSDKandDemoforIOS_v1.0.8. 根 ...

  4. Windows环境下Android Studio v1.0安装教程

    Windows环境下Android Studio v1.0安装教程 准备工具 JDK安装包. 要求:JDK 7以及以上版本. Android Studio安装文件. Windows: exe(包含SD ...

  5. 【转】Windows环境下Android Studio v1.0安装教程

    原文网址:http://ask.android-studio.org/?/article/9 http://android-studio.org/index.php/docs/experience/1 ...

  6. Android SDK 4.0.3 开发环境配置及运行

    最近又装了一次最新版本的ADK环境 目前最新版是Android SDK 4.0.3 本文的插图和文本虽然是Android2.2的 步骤都是一样的,如果安装的过程中遇到什么问题,可以留言,我会尽快回复! ...

  7. Android SDK 5.0 这个语句带来折腾 - 生命在于折腾!

    Android SDK 5.0  带来的这番折腾 - 生命在于折腾! 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一 ...

  8. 安卓模拟器Android SDK 4.0.3 R2安装完整图文教程

    在最新的Android 4.0.3 R2模拟器中,已经加入了GPU支持,可以支持OpenGL ES 2.0标准,让开发者可以借助模拟器来测试自己的OpenGL游戏.在去年新增了摄像头支持之后,现在的新 ...

  9. Android笔记——Windows环境下Android Studio v1.0安装教程

    本文主要讲解Windows环境下Android Studio的安装教程,Mac的Android Studio安装与此类似不在赘述,另外友情提示Windows下的SDK与Mac的SDK是通用的,可以直接 ...

随机推荐

  1. activiti入门2流程引擎的API和服务基础

      RepositoryService : 管理和控制发布包和流程定义(包含了一个流程每个环节的结构和行为)的操作 除此之外,服务可以 查询引擎中的发布包和流程定义. 暂停或激活发布包,对应全部和特定 ...

  2. Android开源项目发现--- 工具类快速开发篇(持续更新)

    1. Guava Google的基于java1.6的类库集合的扩展项目 包括collections, caching, primitives support, concurrency librarie ...

  3. linux 设置命令行属性,背景色,前景色等

    我的博客:www.while0.com 主要是命令setterm.

  4. apk,task,android:process与android:sharedUserId的区别

    apk一般占一个dalvik,一个进程,一个task.通过设置也可以多个进程,占多个task. task是一个activity的栈,其中"可能"含有来自多个App的activity ...

  5. bzoj2165

    类似于bzoj1706,考虑到楼层是等价的我们令f[p,i,j]为用了2^p次电梯,从房间i到j最多上升了多少层然后从2^p很容易推到2^(p+1),类似于floyd的转移即可下面我们要用最小的电梯次 ...

  6. ServiceStack.Redis常用操作 - 事务、并发锁

    一.事务 使用IRedisClient执行事务示例: using (IRedisClient RClient = prcm.GetClient()) { RClient.Add("key&q ...

  7. leetcode shttps://oj.leetcode.com/problems/surrounded-regions/

    1.从外围搜索O,深度搜索出现了 Line 35: java.lang.StackOverflowError Last executed input: ["OOOOOOOOOOOOOOOOO ...

  8. 使用AppDelegate单例,解决子视图无法给父视图发送消息的问题

    关于单例模式,我会在实验过后再开一个博客重点讲单例的使用,这里只是介绍我在PhotoForBingyan的照片滤镜的项目中使用AppDelegate单例的情况. 碰到的问题: 由于这个项目是个多视图的 ...

  9. jQuery 属性操作和CSS 操作

    如有在jQuery方法中涉及到函数,此函数必定会返回一个数值(函数由于运行次数不同触发一些不同效果) jQuery 属性操作方法(以下方法前些日子学习过,不再赘述) addClass() attr() ...

  10. poj 1050 To the Max (简单dp)

    题目链接:http://poj.org/problem?id=1050 #include<cstdio> #include<cstring> #include<iostr ...