2016-07-29 28 views
0

Ich baue eine Cordova App, die uns vom Handy aus drucken soll.Cordova print plugin sucht nur nach Drucker (mit WLAN-fähigen Drucker im selben Netzwerk), druckt nicht oder gibt keinen Fehler

Ich folge this plugin

Ich habe den Druckcode direkt am Gerät fertigen hinzugefügt, also auf dem Gerät bereit darf ich als PDF speichern wählen und alles funktioniert gut bis hier für Drucker, suchen mein Code in 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') 
}); 
    } 
); 

oben Code So öffnen Sie den Dialog Drucker hier auswählen und sogar alarmiert die Meldung, dass Drucker verfügbar ist.

Das Hauptproblem ist, wenn ich suche Drucker suche, durchsucht es kontinuierlich den Drucker, aber keine Antwort bis 15 Minuten, gibt es keine Auszeit dort. Ich habe einen WLAN-Drucker über LAN verbunden.

Ich wundere mich nur, dass gibt es bestimmte Einstellungen für Drucker von Android drucken?

Jede Art von Vorschlag und Hilfe wird geschätzt.

Antwort

0

Dies ist mein Code, um den Drucker zu verwenden. Stellen Sie sicher, dass auf Ihrem Telefon ein Druckerdienst installiert ist. Das cordova-Plugin ruft den Druckerdienst auf, der Druckerdienst übernimmt den Druckauftrag, nicht das Plugin.

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'); 
      }); 

     } 
    } 
})