Android连接蓝牙打印机打印图片问题~~求助

SMouse鱼骨头 2015-10-07 12:51:38
用Android手机连接蓝牙打印机打印文字已经清楚了。
但是用打印文字的方法打印“二维码”就是乱码,我就想到了用 Intent传送图片,但是intent.setType(image/*);之后就找不到蓝牙设备了。

我很想知道,蓝牙打印机的工作原理,在接收数据时它会去根据传输的数据类型去处理吗。

最后,很想各位亲能提供一些帮助。(*  ̄3)(ε ̄ *)
...全文
836 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_24916085 2017-07-26
  • 打赏
  • 举报
回复
你的这个问题解决了吗???解决了话怎么解决的
sparrow1058 2015-10-16
  • 打赏
  • 举报
回复
这个蓝牙通讯是UUID是 串口打印机的设备 如果是ESC/POS 指令集的打印机。 打印图片要用 1B 2A 指令,
SMouse鱼骨头 2015-10-07
  • 打赏
  • 举报
回复
蓝牙打印机首先要得到outputStream 然后对其中的数据进行打印,这个OutputStream是通过Socket得到的,可以向其中write , byte数组, 字符串可以转化成byte数组,打印机也能够识别并正确打印,现在应该用什么样的方式告诉打印机 我要打的这个字符串不是字符串而是二维码呢? 1.对打印机的连接设置 2.对byte进行设置
SMouse鱼骨头 2015-10-07
  • 打赏
  • 举报
回复
现在 先将字符串转化成二维码,在将二维码转换成byte数组,在传递给打印机。
SMouse鱼骨头 2015-10-07
  • 打赏
  • 举报
回复
首先建立socket连接,通过这个连接打开outputStream ,通过这个OutputStream 就能写进byte[ ],这样就能打印文字了。 byte[] print = sendData.getBytes("gbk"); 这样 就能得到字符串的byte数组了 下面通过 这种方式来获取 byte数组 打印的就是乱码,这其中应该加什么步骤才能让其乱码转化成二维码? 或者不能直接通过这种方式创建bitmap,或者bitmap 确实不能转化成byte数组而被蓝牙打印机识别。 Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.qr); ByteArrayOutputStream baos = new ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos); byte[] buffer=baos.toByteArray();

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧