iPhone上的LPD网络打印机

时间:2011-11-22 23:07:46

标签: ios cocoa-touch printing bonjour

我需要将其中一个热网络收据连接到iPhone / iPad。 打印机不支持AirPrint功能。 现在它当前连接到路由器并具有IP地址。 看起来当我尝试使用Bonjour在当前域中找到它时(监听服务类型_printer._tcp,_printer._udp,_ldp._tcp / _udp,_ndd._tcp / _udp)它没有显示出来。

如果我在Mac上进入打印机设置并尝试从Defaults(我假设也使用Bonjour)中找到该打印机,那么它也不存在。我将打印机添加到Mac计算机的唯一方法是手动输入IP(这不是我想要的)。另外,如果我重新分享从Mac手动添加的打印机,那么我可以使用Bonjour在iPhone / iPad上搜索并收听“_ipp”服务。 _tcp“。

我尝试的另一件事是使用我已经知道的IP使用“dns-sd -P”热敏打印机“_printer._tcp。本地515 thermal.local 196.168.0.3”之类的东西。看起来它也在起作用。

但是,我需要的是能够自动从iPhone / iPad上找到打印机,就像Square应用程序一样。我不确定是否可以使用Bonjour(我需要搜索什么服务),或者我需要使用套接字并听取特定端口。

任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:0)

我最终向广播地址发送icmp请求以从网络获取所有ips,然后使用StarIO IOS Kit检查该地址是否属于打印机。然后我在列表中显示所有打印机供用户选择。

找一个广播:NICInfo 对于icmp请求:SimplePing 与TSP100 - STARIO IOS光栅打印进行通信。