有没有办法使用http将打印任务发送到支持IPP的网络打印机?

2024-02-12

我正在开发一个 Android 打印服务应用程序,该应用程序应该允许用户执行以下操作:浏览手机的内部存储并将所选文件发送到支持 IPP 的打印机进行打印。

这几天上网查了一下,只找到一个解决办法[如何在android中使用ipp(互联网打印协议)和HTTP打印文件? https://stackoverflow.com/questions/8570882/how-to-use-ippinternet-printing-protocol-with-http-to-print-file-in-android/8571334#8571334%5D这对我来说有点道理。但是,除了知道必须向打印机的 url 发出 http put 请求之外,我不知道如何从这里继续。有什么帮助吗?谢谢

注意:Google 云打印不适合我。


作为起点,你应该

  • 阅读IPP 实施者指南 http://ftp.pwg.org/pub/pwg/candidates/cs-ippig20-20150821-5100.19.pdf
  • 实施IPP 编码和传输 https://www.rfc-editor.org/rfc/rfc2910
  • 很好地理解IPP模型和语义 https://www.rfc-editor.org/rfc/rfc2911

2023 年更新

With ipp客户端 https://github.com/gmuth/ipp-client-kotlin您可以从 Android 将 PDF 提交到 IPP 网络打印机:

IppPrinter("ipp://colorjet.local")
   .printJob(File("my.pdf"), documentFormat("application/pdf"))
   .waitForTermination()

如果打印机不支持 PDF,您需要将文档转换为打印机支持的格式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有办法使用http将打印任务发送到支持IPP的网络打印机? 的相关文章

  • React Native 从 JavaScript 代码内部访问 strings.xml

    有没有办法访问当前值android app src main res values strings xml从 JavaScript 代码内部 我想为每个构建放置不同的端点 URL 但我什至无法检测到反应本机代码内的构建类型 而不必求助于 D
  • 如何重试已消耗的 Observable?

    我正在尝试重新执行失败的已定义可观察对象 一起使用 Retrofit2 和 RxJava2 我想在单击按钮时重试特定请求及其订阅和行为 那可能吗 service excecuteLoginService url tokenModel Ret
  • Sqlite数据库生命周期?关闭应用程序后它会被删除吗?

    我正在遵循一个简单的教程 该教程创建一个从 SQLiteOpenHelper 扩展的类 并创建一个包含一个表和 5 行的数据库 好的 但我需要更多地了解 android Sqlite 数据库 例如 如果应用程序关闭或手机关机会发生什么 数据
  • SearchView过滤ListView

    我已经实现了搜索视图来过滤我的列表视图项目 当我输入任何文本时 它会过滤列表 但当我退出搜索视图时 它不会返回原始列表项 public class PlacesListAdapter extends ArrayAdapter
  • Android 后退按钮无法与 Flutter 选项卡内的导航器配合使用

    我需要在每个选项卡内有一个导航器 因此当我推送新的小部件时 选项卡栏会保留在屏幕上 代码运行得很好 但是 android 后退按钮正在关闭应用程序而不是运行 Navigator pop import package flutter mate
  • 如何使用 Ruby on Rails 3 检查 HTTP 请求的“Content-Length”字段?

    我正在使用 Ruby on Rails 3 在我的视图文件中我有以下代码 为了避免服务器过载 我会在服务器接收上传文件之前检查上传文件的大小 这是因为 按下表单的提交按钮 服务器会先完整接收文件 然后再检查文件 我知道一个HTTP 请求有标
  • Adobe 是否为其 PDF 阅读器提供 Android SDK 或 API? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我希望能够在我们的应用程序内的视图中显示本地 PDF 文件 在 Android 4 03 下的平板电脑上运行 目前 我们将 Adob eR
  • 如何使用 Cordova 获取当前安装的应用程序的版本?

    我已经找到了应用程序可用性插件 https github com ohh2ahh AppAvailability它主要检查用户是否在其设备上安装了某个应用程序 是否有可能获得应用程序的当前版本 开发者名称 重要 以及所有可能的信息 一般来说
  • Android:捕获的图像未显示在图库中(媒体扫描仪意图不起作用)

    我遇到以下问题 我正在开发一个应用程序 用户可以在其中拍照 附加到帖子中 并将图片保存到外部存储中 我希望这张照片也显示在图片库中 并且我正在使用媒体扫描仪意图 但它似乎不起作用 我在编写代码时遵循官方的Android开发人员指南 所以我不
  • 在gradle插件中获取应用程序变体的包名称

    我正在构建一个 gradle 插件 为每个应用程序变体添加一个新任务 此新任务需要应用程序变体的包名称 这是我当前的代码 它停止使用最新版本的 android gradle 插件 private String getPackageName
  • JavaMail 只获取新邮件

    我想知道是否有一种方法可以在javamail中只获取新消息 例如 在初始加载时 获取收件箱中的所有消息并存储它们 然后 每当应用程序再次加载时 仅获取新消息 而不是再次重新加载它们 javamail 可以做到这一点吗 它是如何工作的 一些背
  • 原色(有时)变得透明

    我正在使用最新的 SDK 版本 API 21 和支持库 21 0 2 进行开发 并且在尝试实施新的材料设计指南时遇到了麻烦 材料设计说我需要有我的primary color and my accent color并将它们应用到我的应用程序上
  • Google 云端硬盘身份验证异常 - 需要许可吗? (v2)

    我一直在尝试将 Google Drive v2 添加到我的 Android 应用程序中 但无法获得授权 我收到 UserRecoverableAuthIOException 并显示消息 NeedPermission 我感觉 Google A
  • HTTPWebResponse 响应字符串被截断

    应用程序正在与 REST 服务通信 Fiddler 显示作为 Apps 响应传入的完整良好 XML 响应 该应用程序位于法属波利尼西亚 在新西兰也有一个相同的副本 因此主要嫌疑人似乎在编码 但我们已经检查过 但空手而归 查看流读取器的输出字
  • 错误:在根项目“projectName”中找不到项目“app”

    我有一个在 Eclipse 中开发的旧应用程序 现在尝试将其迁移到 Android Studio 我更新了库并遵循了基本步骤 现在 我收到此错误 Error Project app not found in root project pro
  • Android 中麦克风的后台访问

    是否可以通过 Android 手机上的后台应用程序 服务 持续监控麦克风 我想做的一些想法 不断聆听背景中的声音信号 收到 有趣的 音频信号后 执行一些网络操作 如果前台应用程序需要的话 后台应用程序必须能够智能地放弃对麦克风的访问 除非可
  • Android:膨胀布局时出现 StackOverFlowError 和 InvokingTargetException

    首先 对不起我的英语 我在膨胀布局时有一个问题 我有一个自定义视图 从 LinearLayout 扩展而来 称为按钮帮助 我在名为的布局上使用该视图加载活动 我的以下代码在所有设备和模拟器上都能完美运行 但具有 QVGA 屏幕 例如 Sam
  • 如何确定对手机号码的呼叫是本地呼叫还是 STD 或 ISD

    我正在为 Android 开发某种应用程序 但不知道如何获取被叫号码是本地或 STD 的号码的数据 即手机号码检查器等应用程序从哪里获取数据 注意 我说的是手机号码 而不是固定电话 固定电话号码 你得到的数字是字符串类型 因此 您可以获取号
  • 如何在Xamarin中删除ViewTreeObserver?

    假设我需要获取并设置视图的高度 在 Android 中 众所周知 只有在绘制视图之后才能获取视图高度 如果您使用 Java 有很多答案 最著名的方法之一如下 取自这个答案 https stackoverflow com a 24035591
  • 捕获的图像分辨率太大

    我在做什么 我允许用户捕获图像 将其存储到 SD 卡中并上传到服务器 但捕获图像的分辨率为宽度 4608 像素和高度 2592 像素 现在我想要什么 如何在不影响质量的情况下获得小分辨率图像 例如我可以获取或设置捕获的图像分辨率为原始图像分

随机推荐

  • 使用 RavenDb 查询字典

    我有一个类定义为 public class Student public string Id get set public IDictionary
  • 模拟 javax.mail.Transport

    无需创建另一个我可以注入的类 是否可以嘲笑javax mail Transport所以我可以做一些模拟测试Transport send Java EE 7 上的方法 由于 Dumbster 没有当前可用的 Maven Central 工件
  • ASP.NET MVC3 ajax 部分视图刷新

    我在 asp net mvc3 中面临 ajax 更新 div 的问题 我有一个包含内容的视图 div Html RenderPartial RefreshComments Model div div using Ajax BeginFor
  • 如何编译将以管理员身份启动 exe 的程序[重复]

    这个问题在这里已经有答案了 可能的重复 以编程方式提升进程权限 https stackoverflow com questions 133379 elevating process privilege programatically 我想在
  • Spring 3.1 - 未找到 javascript 文件 - 404 错误

    我在文件夹 WebContent resources js test js 中有一个 js 文件 我试图在 jsp 中包含相同的文件 但是jsp文件无法找到js文件 浏览器控制台出现404错误 我已经提出了几个问题 SpringMVC 可以
  • 在哪里可以管理上传到 Gitlab.com 项目 wiki 的文件?

    在为我的私人项目创建 wiki 时 我已将一些文件上传到 gitlab com 上的 Gitlab 存储库 现在我的问题是 我可以查看已上传文件的列表吗 有什么办法可以删除其中一些吗 为什么上传文件的权限是公开的 可以改成私密吗 gitla
  • 如何从 iPhone 上的在线网址播放音频 [重复]

    这个问题在这里已经有答案了 我知道以前有很多人问过这个问题 但我只是不知道为什么这在我的 x code 和 Objective C 应用程序中不起作用 基本上 我想从 url 在应用程序中播放音频 仅使用Apple网站上的测试音频 我的代码
  • 空文件上的 AWK FNR==NR

    我正在运行以下命令 只要它们的内容在第一个文件中 该命令就可以很好地工作 awk F FNR NR a tolower 1 next a tolower 1 OutSideSyncUsers csv NewUsers csv 如果第一个文件
  • 将 ID 添加到 Google 地图标记,然后定位它[重复]

    这个问题在这里已经有答案了 我已经使用 Google Maps API v3 创建了一个 google 地图 并添加了一个自定义标记 我已经向标记构造函数添加了一个 ID 我希望使用 jQuery 以其他 JS 为目标 但目前 当我只是尝试
  • 静态链接到动态库。 glibc

    所以 我遇到一个问题 一台机器上有两个版本的 GCC 3 4 6和4 1 这是由于新软件的一些依赖性问题 需要 glibc 4 1 当我将这个新软件与 4 1 库链接时 它链接得很好 但是 当执行软件时 它找不到该库 因为它正在我的 LD
  • ExtJs 面板 - 添加动态组件

    我有一扇窗户 窗户内有面板 我动态地将组件添加到面板中 这些组件采用 hbox 布局 以便水平排列 单击按钮后 我将在 hbox 布局中向面板中添加一行类似的组件 这里的问题是我想在第一行下方添加第二行 但以下代码将组件添加到面板的顶部 p
  • Symfony2 Doctrine 查询生成器作为 FROM 子句中的子查询

    我使用查询生成器得到了一个查询 并将其分配给 qb多变的 它在 PHP 和数据库中都可以正常工作 现在 我尝试将该查询用作子查询 如下所示 subQuery qb gt getQuery gt getSql query select res
  • 如何调试 Linux 内核模块的 init_module() 调用?

    我正在迈出 Linux 内核开发的第一步 我有一些代码生成 ko我安装的内核模块insmod 我想要一种方法来调试安装模块时发生的情况 但我遇到了一些困难 我需要调试调用init module 当我运行时这个函数被调用吗insmode 我尝
  • UPI Deep Link 付款被拒绝

    我不知道在哪里问这个问题是否合适 而是我不知道在哪里问这个问题 我正在flutter中开发一个应用程序 对于应用程序内购买我正在尝试实现UPI支付 我也有一些插件可以做到这一点 但是当我测试时 我的交易被拒绝 我正在尝试通过应用程序中的 P
  • 具有多个模板参数的 C++ 概念

    Bjarne Stroustrup 最近发表了report http www stroustrup com good concepts pdf在 C 概念 中 他提到了一些让我感到惊讶的事情 该示例 第 7 1 节中 使用 速记模板表示法
  • MySQL 基于游标的多列分页

    我有一些表想要使用基于游标的分页进行查询 但它需要应用于多个列 让我们举一个使用 2 列的简化示例 我像这样获取第一页 SELECT column 1 column 2 FROM table name ORDER BY column 1 c
  • 一种唯一标识 BTLE 设备的方法

    有没有办法唯一地标识 BTLE 设备 类似于硬件 ID 我有 2 个硬件 BTLE 设备和 2 个软 BTLE 设备 使用 CBCentralManager 所有这些设备都发送相同的 UUID 当所有设备都位于我附近时 我想识别确切的 BT
  • 如何使用 jq 将当前日期和时间附加到现有 json 文件中

    我有以下格式的 json 文件 username achu password test1234 我只想将时间戳添加到上述有效负载中并将其作为某些服务的请求发送 据我所知 下面的命令将帮助我们获取 Linux 上的当前标记 date r 但不
  • 从脚本内获取 Swift 脚本的路径

    我正在用 Swift 编写一个脚本 我希望它修改一些始终与脚本本身位于同一目录中的文件 有没有办法从脚本内部获取脚本的路径 我试过 print Process arguments 但这仅输出实际提供给脚本的路径 该路径可能是完全解析的路径
  • 有没有办法使用http将打印任务发送到支持IPP的网络打印机?

    我正在开发一个 Android 打印服务应用程序 该应用程序应该允许用户执行以下操作 浏览手机的内部存储并将所选文件发送到支持 IPP 的打印机进行打印 这几天上网查了一下 只找到一个解决办法 如何在android中使用ipp 互联网打印协