是否可以直接将内容打印到连接wifi的打印机而无需用户在android编程中进行交互?

时间:2015-05-26 03:40:26

标签: android printing wifi

我正在开发一个Android项目。一个关键要求是通过连接wifi的打印机打印收据。

在这个阶段,我所取得的是打开一个打印机对话框。然后,打印机对话框允许用户进行交互以选择可用打印机列表,然后点击打印。

但我希望有一种方法可以避免用户交互并直接打印html文件,图像等内容。

这是打印位图图像的代码。

private void doPhotoPrint()
{
    PrintHelper photoPrinter = new PrintHelper(this);
    photoPrinter.setScaleMode(PrintHelper.SCALE_MODE_FIT);
    Bitmap bitmap = BitmapFactory.decodeResource(getResources(),
            R.drawable.coffeehost);
    photoPrinter.printBitmap("droids.jpg - test print", bitmap);
}

,打印机是Epson Artisan 730。

代码有效,但会弹出一个打印对话框,用户必须选择Epson打印机,然后点击“打印”按钮。

我真正想要的是避免该对话框并直接打印图像。

对于这个项目,我可以决定使用哪种打印机,只要它支持直接打印。

1 个答案:

答案 0 :(得分:1)

我找到了一个解决方案。

我们可以直接连接到打印机正在使用的端口。

例如,我的打印机正在侦听端口9100,其地址为192.168.0.10。因此,我们可以使用TCP协议连接到192.168.0.10:9100,然后将文本发送到套接字。打印机将立即打印内容。