【问题标题】:How to use ipp(Internet Printing Protocol) with HTTP to print file in android?如何使用带有 HTTP 的 ipp(Internet 打印协议)在 android 中打印文件?
【发布时间】:2012-01-24 03:31:46
【问题描述】:

我想从 android 应用程序打印文件。同样,在 google 上搜索后,我发现了一些有用的信息,我将不得不使用 IPP(Internet 打印协议)和 HTTP。我是 ipp 的新手,但我使用过 HTTP。 那么任何人都可以帮助我吗? 谁能给我一些有用的信息或链接? 提前谢谢?

【问题讨论】:

    标签: java android printing ipp-protocol


    【解决方案1】:

    使用ipp-client-kotlin打印文件可以这样实现:

    IppPrinter("ipp://colorjet.local/ipp/printer")
        .printJob(File("A4-blank.pdf"))
        .waitForTermination()
    

    【讨论】:

      【解决方案2】:

      【讨论】:

      【解决方案3】:

      您需要发出具有某些特殊功能的 HTTP PUT 请求,您必须:

      • 使用端口 631 而不是 80(当然除非明确指定)。
      • 重写标题中的url(即ipp:// => http://)。
      • 协议 ID 为 IPP/1.1
      • 您必须通过质询方法进行身份验证。

      OTOH,正文中使用的请求/响应格式是二进制的,所以你真的应该阅读RFC。除此之外,它非常简单,您只需要作业和打印机 URI,然后您只需发送正确编码的数据。

      【讨论】:

      • 感谢您的回复!你能告诉我如何在 android 中使用 header ipp:// 发出请求,因为我只有打印机的 IP 地址吗?
      • 这就是你所需要的,ipp://ip:631 在正文中,http://ip:631 在 HTTP 标头中...只需打开一个套接字并开始编写...
      • 是否有任何链接可以获取示例代码以进行上述请求?因为我无法在android中编写打开套接字的代码。你能给我这样的信息吗?
      • 如果您不关心兼容性,使用 CGI 可能是个好主意。
      猜你喜欢
      • 2013-04-18
      • 2023-04-10
      • 2015-07-18
      • 1970-01-01
      • 2020-05-29
      • 1970-01-01
      • 1970-01-01
      • 2022-01-14
      • 2016-08-16
      相关资源
      最近更新 更多