2015-04-22 145 views
5

刚刚开发的简单Android应用程序。 我有通过api谷歌在android版本4.4工作的打印功能。无需打印对话框打印Android

无论如何,我的最终目的是自动打印到默认打印机没有任何用户界面。打印内容是简单的HTML。 我需要一些自定义代码来解决此问题。

亲切的问候 达尼洛

+0

请说明您的问题,并与你已经写的代码编辑您的问题 – Jean

+1

我的问题是:我可以在连接到我的设备默认打印机打印页面HTML没有打印dialog..at此刻我不尝试任何可以允许隐藏打印对话框的库....有一个APF框架,我的使用是昂贵的.. http://apf.isb-vietnam.com/ –

+0

感谢你advace! –

回答

3

我认为,我们能不能够隐藏打印对话框中,堂妹, PrintManager类是final。 所以,我们不允许重写。

当您从活动中调用此print(String,PrintDocumentAdapter,PrintAttributes)时,它将启动Print作业,同时它将启动系统打印用户界面。

如果你想打印文档,你可以参考这个Android-wifi-print - GitHub一个例子。这只是使用wifi打印机打印文档的原型。

0

幸运的是,我能够覆盖PrintManager的打印的方法,但是你无法继续打印或发送作业而不去的意图命令打印。

PrintJobInfo printJobInfo = bundleResult.getParcelable("android.print.intent.extra.EXTRA_PRINT_JOB"); 
IntentSender printIntent = bundleResult.getParcelable("android.print.intent.extra.EXTRA_PRINT_DIALOG_INTENT"); 

除非在这里有人有一个想法或建议如何处理意图。如果需要,我可以发布关于如何制作我自己的管理器打印方法的代码,但是它会被卡在printIntent上。如果我们可以解决printIntent问题,那么我们可以解决隐藏打印对话框的常见问题。

+0

打印管理器覆盖代码会很有趣,但最终云打印插件/ apk需要这个意图。我不知道如果您最终希望使用默认的Android系统进行打印,那么有办法绕过该部分。 – Chris

+0

我对声明“幸运的是我能覆盖PrintManager的打印方法”感兴趣。你不能'扩展'最终的类,并且没有其他方法来“覆盖”一种方法。也许你在课堂上包装了'PrintManager'? –