Brother Mobile SDK - printImage () не является функцией - PullRequest
0 голосов
/ 19 октября 2019

Я пытался внедрить Brother Mobile SDK в мое приложение Nativescript + vue для IOS.

Моя проблема заключается в том, что я получаю следующее сообщение об ошибке: TypeError: printer.printImage is not a function. (In 'printer.printImage(image.cgImage)', 'printer.printImage' is undefined)

сообщение об ошибке предполагает, что файл javascript, который я использую для вызова SDK, предполагает, что метод printImage () не существует.

Вот фрагмент кода, который был запущен:

BrotherPrinter.prototype.print_image = function (PrinterName, paperSize, ipAddress, image) {
        try {
            let printer = new BRPtouchPrinter()
            printer.printerName = PrinterName
            printer.interface = CONNECTION_TYPE_WLAN
            printer.setIPAddress(ipAddress)

            let settings = new BRPtouchPrintInfo()
            settings.strPaperName = paperSize
            printer.setPrintInfo(settings)

            if (printer.startCommunication()) {
                //Print to the printer
                let errorCode = printer.printImage(image.cgImage) //Apparently function doesn't exist.
                if (errorCode != ERROR_NONE_){
                    console.log("Error - ", errorCode)
                }
                printer.endCommunication()
            }
            else{
                console.log("Failed to connect")
            }
        }
        catch(e) {
            console.log("Error - ", e);
        }
    };

Я успешно смог реализовать методы setPrintInfo (), setIPAddress () и getStatus () в заголовочном файле BRPtouchPrinter.h. Все это работает и возвращает ожидаемые результаты. Я также могу подключиться к принтеру этикеток без проблем. Просто я не могу печатать на принтере, поскольку он предполагает, что метод printImage не существует, даже если метод существует в заголовочном файле.

Вот строка в заголовочном файле с методом:- (int)printImage:(CGImageRef*)imageRef copy:(int)nCopy;

...