我的产品是使用嵌入式Android的工业测量仪器。仪器需要将结果打印到预先选定的网络打印机或USB打印机。仪器操作员不能担负标准的Android打印机界面,并且云打印不可接受。我认为这种情况在嵌入式Android产品(例如POS热敏打印机)中是相当普遍的打印到USB或预先选择的网络打印机从嵌入式android

我有代码可以在网络上找到可用的打印机并返回IP地址和端口号, ANSI文本到打印机。但是,Unicode字符不能正确打印。其他一些非ANSI字符也会打印(一些欧洲字母变体)。我相信这是因为默认的“符号集”。

我的期望是,我将使用PCL或IPP来控制打印机。所有以“@PCL”开头的文本都以纯文本形式打印。所有以ESC开头的文本都不会打印,但我没有理由相信这些命令正在处理中。

搜索'网页,我看到这个问题已被问了几次,但没有得到很好的回答。

我在想我的Socket/InputStream/BufferedReader的用法是否有问题。

有没有人设计过这种用法的解决方案?

final char ESC = 0x1b;

final String UEL = ESC + "%-12345X";

final String CRLF = "\r\n";

Socket socket = new Socket(printer.getIpAddr(), 9100);

InputStream inputStream = socket.getInputStream();

DataOutputStream oStream = new DataOutputStream(new BufferedOutputStream(socket.getOutputStream()));

write(oStream, UEL + "@PJL" + "\r\n");

write(oStream, "@PJL COMMENT some comments" + CRLF);

write(oStream, "@PJL ECHO RRE" + CRLF);

write(oStream, UEL + "\r\n");

oStream.flush();

BufferedInputStream bufferedInputStream = new BufferedInputStream(inputStream);

int count = bufferedInputStream.available();

本地“写”方法创建从Java字符串以UTF-8字节数组并写入字节到流中。请注意,对于这些字符,UTF-8是ANSI

android usb联接网络打印机,打印到USB或预先选择的网络打印机从嵌入式android相关推荐

  1. java usb 无驱打印_Windows Usb 无驱动打印

    \?\USB#VID_8866&PID_0100#0001B0000000#{a5dcbf10-6530-11d2-901f-00c04fb951ed} USB小票打印解决办法 一.需要驱动, ...

  2. 关于安卓19的板子通过usb连接打印机打印问题 (非小票打印机器)

    很多打印机有提供windows,linux的打印驱动,但是安卓的驱动几乎没有厂家提供,这就导致很多想通过安卓平板控制打印机连接打印的用户无法实现,而市面上面大多数打印软件也是通过蓝牙或者网络来进行连接 ...

  3. android usb多个,android、windows上多个USB Camera同时使用实验小结

    android.windows上多个USB Camera同时使用实验小结 (2013-05-18 19:19:46) 标签: 小结 实验 使用 杂谈 android.windows上多个USB Cam ...

  4. android aoa 串口,沁恒股份USB Android AOA转接概述

    概 述 本方案是以CH9343为核心芯片的全速USB Android HOST接口控制方案,具有高集成度.低功耗.单芯片体积小等特点,可配置为6种扩展接口. 该方案为安卓手机或平板USB连接外部GPI ...

  5. Android 系统(67)---android apk 的root 权限和USB adb 权限的区别

    android apk 的root 权限和USB adb 权限的区别 USB adb 权限是指,当adb 连接手机时,手机中的守护进程adbd 的权限为root 权限,从而它的子进程也具有root 权 ...

  6. usb 系统消息_别让 USB 传输速度影响 Android 开发效率

    概览 迭代速度是构建高质量 Android 应用的关键要素.处理的速度越快,应用程序的体验就越顺畅.这篇文章将和大家聊聊如何优化部署时间. 部署 101 在 Android Studio 3.5 中, ...

  7. 那些年踩过的坑-之《Android Q-高通平台UAC(USB Audio Class)调试记录》

    uac分为UAC1.0和UAC2.0,由于UAC2.0,在windows上兼容性不好,在产品中,会带来各种坑,所以选择UAC1.0 平台:高通 SDA660,android Q,kernel4.4 一 ...

  8. Android O新增的关于usb的三个属性 sys.usb.configfs,sys.usb.ffs.ready,sys.usb.ffs.mtp.ready

    1.sys.usb.configfs 该属性默认为0,通过判断kernel是否支持configfs,即判断/config/usb_gadget存在设置为1.代码在init.qcom.usb.sh中(高 ...

  9. ft232 android,微雪电子FT232(mini)USB转USART简介

    FT232 USB转UART串口模块 USB mini接口 采用原装FT232RL 支持3种供电模式 支持Mac.Linux.Android.WinCE.Windows 7/8/8.1/10... 型 ...

最新文章

  1. [转载]Tensorflow 的reduce_sum()函数的axis,keep_dim这些参数到底是什么意思?
  2. 怎么删除顽固的服务器文件夹,实用技巧:删除Windows XP下顽固文件方法
  3. Java开发Web Service的简介
  4. VMware 修复 Workstation、Fusion 和 ESXi中的多个漏洞
  5. (待补充)【n个骰子的点数】剑指offer——面试题43:n个骰子的点数
  6. 使用k-近邻算法进行分类
  7. Kubernetes 介绍
  8. 怎么用wps抽签_怎么制作抽签,WPS表格怎么制作抽签程序表格
  9. 【python + FFmpeg】对视频进行分辨率改变,(带音频)
  10. 计算机管理调整磁盘分区,win7系统硬盘分区调整方法图解
  11. 【论文笔记】A survey on security and privacy of federated learning(综述)
  12. 超详细!如何在windows安装Hyper-V虚拟机
  13. Model-Agnostic Meta-Learning (MAML) 理解
  14. Linux基础 - DNS服务基础
  15. 谷歌浏览器在线观看视频有声音但画面黑屏问题解决
  16. php sphinx应用场景,Sphinx+Scws 搭建千万级准实时搜索应用场景详解
  17. kafka python 性能_使用 Python 监控 Kafka Consumer LAG
  18. Oracle索引比表大
  19. 丰沛数_不足数_完全数
  20. PEDOT:PSS/甘油酸胆碱([Ch][Glyce])离子液体混合材料

热门文章

  1. wpsmac和pc版的区别_WPS Office for Mac VS Microsoft Office 365,同为办公软件,差别竟然这么大!...
  2. Dialogue System for Unity文档中英对照版(简雨原创翻译)第四篇(关于主流ui插件拓展相关)
  3. powershell 结束进程的四种写法
  4. 从零开始在 FreeNAS 的 Jail 上安装 NextCloud 并配置 Nginx 作为网页服务器而且 设置SSL证书 使用 https 访问 以及 oc_filecache 修复方法、优化方法
  5. 顺时针打印矩阵(旋转矩阵)
  6. visual studio 2010教程-创建网站项目
  7. Win10 蓝牙已配对但无法连接的问题
  8. bzoj4605: 崂山白花蛇草水 权值线段树套KDtree
  9. 淘宝聚划算怎么做?大神导航,一个神奇的网站,从此开启大神之路!
  10. 计算机主机如何控制计算机室,电脑远程控制怎么弄?电脑弄远程控制功能的方法...