我正在使用最新的 Epos iOS SDK。对我来说,通过 Wi-Fi 网络发现打印机需要很长时间。在此之后,当我连接设备时,它会冻结主线程一段时间并返回 5 个错误代码(ERR_CONNECT)
有时它就像一个魅力,但几乎在 60% 的情况下它失败了
我制作的代码:
+ (BOOL)connectPrinter:(Epos2Printer *)printer toTarget:(NSString *)target
{
if (printer == nil) {
return NO;
}
int result = EPOS2_SUCCESS;
result = [printer connect:target timeout:EPOS2_PARAM_DEFAULT];
if (result != EPOS2_SUCCESS) {
[self showErrorEpos:result method:@"connect"];
return NO;
}
return YES;
}
目标是一个TCP:ipaddress
要发现我使用的打印机
int result = [Epos2Discovery start:self.viewModel.filterOption delegate:self];
#pragma mark - Epos2DiscoveryDelegate
- (void)onDiscovery:(Epos2DeviceInfo *)deviceInfo
{
if (deviceInfo) {
[self.viewModel handleFoundedPrinter:deviceInfo];
[self.tableView reloadData];
}
}
初始化打印机
self.filterOption = [[Epos2FilterOption alloc] init];
[self.filterOption setDeviceType:EPOS2_TYPE_PRINTER];
self.printer = [[Epos2Printer alloc] initWithPrinterSeries:1 lang:0];