我一直在使用UIPrintInteractionController和预先选择的UIPrinter来允许我们的应用程序的用户打印而不显示用于选择设备的对话框。然而,我们遇到的一个问题是,即使控制器知道将作业发送到哪台打印机,它仍然会显示一个屏幕,指出该设备是“正在联系打印机......”和“正在准备...”正下方的“取消”按钮。这导致了一个问题,即自助服务终端的用户正在取消作业而没有意识到它会中断标签生成过程。
有没有办法消除这种对话?设法使控制器在后台处理打印机交互?
这是我发送作业的代码:
NSURL* url = [NSURL URLWithString:printerId];
UIPrinter* printer = [UIPrinter printerWithURL:url];
[controller printToPrinter:printer completionHandler:
^(UIPrintInteractionController *ctrl, BOOL ok, NSError *e) {
CDVPluginResult* pluginResult =
[CDVPluginResult resultWithStatus:CDVCommandStatus_OK
messageAsBool:ok];
[self.commandDelegate sendPluginResult:pluginResult
callbackId:_callbackId];
}];
感谢您的帮助!