请选择 进入手机版 | 继续访问电脑版

雨滴科技技术论坛

 找回密码
 立即注册
查看: 42|回复: 0

获取打印机的实时状态

[复制链接]

338

主题

1790

帖子

6530

积分

版主

Rank: 7Rank: 7Rank: 7

积分
6530
扫一扫,手机访问本帖
发表于 2019-9-7 16:34:22 | 显示全部楼层 |阅读模式
   安卓通过无线打印服务打印后,如果要根据打印的状态来进行下一步处理,就需要获取实时的打印状态。由打印后通知栏会显示打印状态可知,安卓是有这个接口的,不过经查这个接口是隐藏的,无法正常获取。

这时可以使用反射来获取状态:
  1. try {
  2.                 Class<?> c = PrintManager.class;
  3.                 Method getPrintJob = c.getDeclaredMethod("getPrintJob", PrintJobId.class);
  4.                 if (getPrintJob != null) {
  5.                     getPrintJob.setAccessible(true);
  6.                     //这里使用的printJobId为开始打印任务是的返回值        PrintJob.getId()
  7.                     PrintJob printJobState = (PrintJob) (getPrintJob.invoke(printManager, printJobId));
  8.                     Log.e("Printer", "printJob--" + printJobState.getInfo().toString());
  9.                     if (printJobState.isCompleted()) {
  10.                         Log.e("Printer", "printJob--complete");
  11.                     } else if (printJobState.isFailed()) {
  12.                             Log.e("Printer", "printJob--printFail");
  13.                     }else if(printJobState.isCancelled()){
  14.                         Log.e("Printer", "printJob--cancel");
  15.                     }else if(!printJobState.isStarted()){
  16.                         waitCount++;
  17.                         if (waitCount>30){
  18.                             isComplete = true;
  19.                             onPrintListener.printFail();
  20.                             printJobState.cancel();
  21.                             Log.e("Printer", "printJob--not statrt");
  22.                         }
  23.                     }
  24.                 }
  25.                 Thread.sleep(2000);
  26.             } catch (Exception e) {
  27.                 e.printStackTrace();
  28.             }
复制代码
要实时获取打印状态可以开个定时器定时查询状态
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在线客服
在线咨询
咨询热线
0755-26787502-8006/8016
扫一扫二维码
直接访问本站

QQ|Archiver|手机版|小黑屋|雨滴科技  

GMT+8, 2019-9-19 07:51 , Processed in 0.073840 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表