Gprinter Android SDK V1.0 使用说明
下载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.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 使用说明的更多相关文章
- Gprinter Android SDK V2.0 使用说明
佳博特约经销商,此店购买的打印机问题优先解决哟 https://shop107172033.taobao.com/index.htm?spm=2013.1.w5002-9520741823.2.V1p ...
- Gprinter Android SDK V2.1 使用说明
下载:http://download.csdn.net/download/abc564643122/8872249
- Gprinter Android SDK V2.1.4 使用说明
佳博打印机Android的SDK开发包,已更新到Gprinter Android SDK V2.1.4. IOS的SDK开发包更新为GprinterSDKandDemoforIOS_v1.0.8. 根 ...
- Windows环境下Android Studio v1.0安装教程
Windows环境下Android Studio v1.0安装教程 准备工具 JDK安装包. 要求:JDK 7以及以上版本. Android Studio安装文件. Windows: exe(包含SD ...
- 【转】Windows环境下Android Studio v1.0安装教程
原文网址:http://ask.android-studio.org/?/article/9 http://android-studio.org/index.php/docs/experience/1 ...
- Android SDK 4.0.3 开发环境配置及运行
最近又装了一次最新版本的ADK环境 目前最新版是Android SDK 4.0.3 本文的插图和文本虽然是Android2.2的 步骤都是一样的,如果安装的过程中遇到什么问题,可以留言,我会尽快回复! ...
- Android SDK 5.0 这个语句带来折腾 - 生命在于折腾!
Android SDK 5.0 带来的这番折腾 - 生命在于折腾! 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一 ...
- 安卓模拟器Android SDK 4.0.3 R2安装完整图文教程
在最新的Android 4.0.3 R2模拟器中,已经加入了GPU支持,可以支持OpenGL ES 2.0标准,让开发者可以借助模拟器来测试自己的OpenGL游戏.在去年新增了摄像头支持之后,现在的新 ...
- Android笔记——Windows环境下Android Studio v1.0安装教程
本文主要讲解Windows环境下Android Studio的安装教程,Mac的Android Studio安装与此类似不在赘述,另外友情提示Windows下的SDK与Mac的SDK是通用的,可以直接 ...
随机推荐
- 编写优质无错C程序秘诀!《经验谈》
这里我将陆续给大家载出我在以前学习和编写c代码时遇到的问题和解决方法.学习的心得,有些是经过查询一些曾经参加微软microsoft的开发小组的老程序员的书籍和资料后提供给大家! 首先,当发现错误时,要 ...
- 接收对 http://192.168.1.18:8001/ObtainData/Service 的 HTTP 响应时发生错误。这可能是由于服务终结点绑定未使用 HTTP 协议造成的。这还可能是由于服务器中止了 HTTP 请求上下文(可能由于服务关闭)所致。
[2015/8/5 19:28:49]错误信息:接收对 http://192.168.1.18:8001/ObtainData/Service 的 HTTP 响应时发生错误.这可能是由于服务终结点绑定 ...
- 【转】 学习ios(必看经典)牛人40天精通iOS开发的学习方法【2015.12.2
原文网址:http://bbs.51cto.com/thread-1099956-1.html 亲爱的学员们: 如今,各路开发者为淘一桶金也纷纷转入iOS开发的行列.你心动了吗?想要行动吗?知道如何做 ...
- LoadRunner监控Windows和Linux常见问题
LoadRunner 加载监听服务器的步骤如下: 1.在 LoadRunner Controller 下,将工作面板切换到 Run状态,Available Graphs 栏 ,System Resou ...
- swfupload 在ie9以上浏览器报错问题记录
解决办法: swfuploadl.js line 840左右 SWFUpload.prototype.cleanUp if (typeof(movieElement[key]) === "f ...
- 以O2O为核心的ERP思考
O2O已经火了一阵子了,很多人都在说O2O,各行各业都想和O2O有所结合,都认为这里面将会有巨大的商机. 在互联网发展到移动互联网的时代,我们的生活的很多方面已经被改变了,很多事情都已经可以在移动端完 ...
- java 实现 DES加密 解密算法
DES算法的入口参数有三个:Key.Data.Mode.其中Key为8个字节共64位,是DES算法的工作密钥:Data也为8个字节64位,是要被加密或被解密的数据:Mode为DES的工作方式,有两种: ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(2)-easyui构建前端页面框架[附源码]
原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(2)-easyui构建前端页面框架[附源码] 开始,我们有了一系列的解决方案,我们将动手搭建新系统吧. 用 ...
- [转][JAVA]定时任务之-Quartz使用篇
[BAT][JAVA]定时任务之-Quartz使用篇 定时任务之-Quartz使用篇 Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与 ...
- 数学之路-python计算实战(20)-机器视觉-拉普拉斯算子卷积滤波
拉普拉斯算子进行二维卷积计算,线性锐化滤波 # -*- coding: utf-8 -*- #线性锐化滤波-拉普拉斯算子进行二维卷积计算 #code:myhaspl@myhaspl.com impor ...