Как iOS автоматически определяет сетевой принтер

POS-системы в основном могут автоматически обнаруживать термопринтеры, насколько мне известно, для установленного приложения на ios есть только два способа сделать это: либо подделать его как Airprint, либо использовать протокол IPP. Поскольку для этих приложений в основном важно, чтобы ваш принтер находился в той же конфигурации сети и подсети, а Airprint не поддерживает термопринтеры, я полагаю, что это может быть выбор, который они используют. Но мой вопрос в том, что если есть другой способ, которым они все это делают? если нет, то как приложение на ipad (iOS) может обнаружить эти принтеры без необходимости установки специального драйвера? Если кто-нибудь может помочь мне с этим, было бы здорово!


person fafa92    schedule 26.08.2018    source источник
comment
AirPrint в основном построен на основе Bonjour.   -  person MadProgrammer    schedule 26.08.2018
comment
В чем именно заключается ваш вопрос?   -  person IPP Nerd    schedule 29.08.2018
comment
@IPPGeek Вопрос в том, как написать приложение для iOS, которое может обнаруживать принтеры, которых нет в списке принтеров Airprint (большинство термопринтеров), и таким образом, чтобы iOS могла обнаруживать принтер без какой-либо установки. Например, как такие приложения, как Square, Vend и т. д., обнаруживают термопринтеры, когда они подключаются к iPad через USB или через локальную сеть?   -  person fafa92    schedule 30.08.2018
comment
Чтобы обнаружить принтеры, не поддерживающие AirPrint, вам необходимо проверить, поддерживает ли принтер вообще обнаружение, и если да, то какое обнаружение он поддерживает. Есть просто много вариантов. Какой метод обнаружения поддерживает принтер, к которому вы пытаетесь подключиться?   -  person IPP Nerd    schedule 31.08.2018
comment
Он использует DHCP. Вопрос в том, как приложение ios, такое как Square или Vend, может обнаружить некоторые определенные термопринтеры, которые находятся в локальной сети, и они не являются принтерами AirPrint?   -  person fafa92    schedule 02.09.2018
comment
DHCP не является протоколом, используемым для обнаружения. DHCP используется для назначения IP-адреса устройству. Большинство реализаций DHCP также предоставляют интегрированную службу DNS, которая позволяет преобразовать имя клиента в IP-адрес. Открытие должно быть сделано раньше. Как узнать имя или IP-адрес устройства? Ручное обнаружение: проверьте сетевые настройки устройства, например. на встроенном дисплее.   -  person IPP Nerd    schedule 01.11.2018
comment
@IPPNerd Привет, это интересно: для обнаружения принтеров, отличных от AirPrint, вам нужно проверить, поддерживает ли принтер вообще обнаружение. Большинство сведений о принтере просто отображаются, например, Спецификации связи — Беспроводная связь — 802.11b/g, так как же найти сведения об обнаружении принтера без воздушной печати? Есть ли какой-то конкретный способ проверить перед покупкой принтеров без воздушной печати?   -  person Maulik    schedule 17.03.2020
comment
@Maulik, сетевой раздел технической спецификации должен включать поддерживаемые протоколы обнаружения, например. Bonjour, ZeroConf, mDNS, SNMP или WS Discovery. Производители в наши дни склонны рекламировать такие протоколы, как AirPrint и Mopria. Оба протокола основаны на IPP, но в спецификациях принтеров IPP не всегда указывается дополнительно. AirPrint и Mopria также требуют поддержки протоколов обнаружения, таких как mDNS/Bonjour. Bonjour широко поддерживается и предшествует AirPrint. Вы можете использовать инструмент для проверки поддерживаемых протоколов обнаружения, например. ippfind, dns-sd -Z _ipp._tcp, браузер Discovery DNS SD (Mac AppStore)   -  person IPP Nerd    schedule 18.03.2020


Ответы (1)


Для печати на принтеры из iOS вы можете использовать AirPrint API с принтеры с поддержкой AirPrint, или вы можете реализовать протокол принтера и PDL в своем собственном приложении.

Некоторые решения включают третий промежуточный компонент, подобный компоненту, который заполняет пробел между мобильным приложением и фактическим устройством. Это не элегантный способ, но, похоже, он работает для некоторых случаев использования.

Полный процесс действительно состоит из двух шагов: обнаружение (например, настройка) и фактическая печать (например, отправка документа). С помощью AirPrint вы можете ознакомиться с документацией, чтобы узнать, как работает Bonjour, также известный как ZeroConf.

person IPP Nerd    schedule 29.08.2018