Cordova 打印插件仅搜索打印机(在同一网络中具有启用 wifi 的打印机),不打印或不给出任何错误

Posted

技术标签:

【中文标题】Cordova 打印插件仅搜索打印机(在同一网络中具有启用 wifi 的打印机),不打印或不给出任何错误【英文标题】:Cordova print plugin only searching for printer (Having wifi enabled printer in same network),Doesn't prints or not gives any error 【发布时间】:2016-07-29 19:52:45 【问题描述】:

我正在构建一个 Cordova 应用程序,它应该允许我们从移动设备打印。

我关注this plugin

我已经直接在设备就绪时添加了打印代码,所以在设备就绪时我可以选择另存为 pdf 并搜索打印机,直到这里一切正常 我在 app.js 中的代码

var printer = angular.module('starter', ['ionic','ngCordova'])

printer.run(function($ionicPlatform) 
  $ionicPlatform.ready(function() 
    cordova.plugins.printer.isAvailable(
    //Check whether the printer is available or not.
    function (isAvailable) 
         //Enter the page location.
         alert("printer is available")
         var page = location.href;
         cordova.plugins.printer.print(page, 'Document.html', function () 
         alert('printing finished or canceled')
);
    
); 

所以上面的代码打开对话框在这里选择打印机,甚至警告打印机可用的消息。

主要问题是当我选择搜索打印机时,它不断搜索打印机但直到 15 分钟才回复,没有超时。我有一台通过 LAN 连接的 wifi 打印机。

我只是想知道打印机上是否有任何特定设置可以从 android 打印?

我们将不胜感激任何形式的建议和帮助。

【问题讨论】:

【参考方案1】:

这是我使用打印机的代码。确保您的手机上安装了任何打印机服务。 cordova 插件将调用该打印机服务,打印机服务将处理打印作业,而不是插件。

angular.module('app.services')
.factory('printService', function() 

    return 
        print: function(printingContent)

            var receipt ='<html>Hello</html>';

            cordova.plugins.printer.check(function (avail, count) 
                if(avail == true)
                    cordova.plugins.printer.pick(function (uri) 
                        //alert("Printer pick: " + uri);
                        cordova.plugins.printer.print(receipt,  duplex: 'long' , function (res) 
                            alert(res ? 'Printing Done' : 'Printing Canceled');
                        );
                    );
                                       
                else
                    alert('No printer service found');
            );

        
    
)

【讨论】:

以上是关于Cordova 打印插件仅搜索打印机(在同一网络中具有启用 wifi 的打印机),不打印或不给出任何错误的主要内容,如果未能解决你的问题,请参考以下文章

科尔多瓦打印机插件不打印

无法从 Objective C 插件返回到 Ionic/Cordova 应用程序时出错

Cordova 使用 cordova-plugin-ble-central 蓝牙插件,实现蓝牙设备持续扫描,打印RSSI等信息demo

Cordova 使用 cordova-plugin-ble-central 蓝牙插件,实现蓝牙设备持续扫描,打印RSSI等信息 RSSI三点定位 demo

使用自定义cordova插件找不到类异常

Phonegap打印插件