Список доступных принтеров AirPrint

Я хотел бы показать список всех принтеров, доступных для устройства через AirPrint.

Я получаю это работает с использованием UIPrinterPickerController,

Есть ли в любом случае отображение этого PickerController в произвольном порядке, скажем, подача данных в UITableView?

Также обратите внимание, что я планирую использовать это приложение на iPad, который поддерживает только UIPrinterPickerController.presentFromRect(CGRect)

Вот как это выглядит прямо сейчас. Вместо этого всплывающего окна должен быть UITableView

Всплывающее окно принтера

1 ответ

NSNetServiceBrowser именно для этого.

Короче, что вам нужно сделать, это:

1) установить объект как NSNetServiceBrowserDelegate 2) создать объект NSNetServiceBrowser 3) назначить делегата 4) используя browserObject.searchForServices(ofType: "_printer._tcp.", inDomain: "") получит различные отзывы делегату.

Простой тест с моей стороны получил:

didFind: Samsung C460 Series (SEC001174EDCB63)

для метода делегата:

func netServiceBrowser(_ browser: NetServiceBrowser, didFind service: NetService, moreComing: Bool) {
    print("didFind: \(service.name)")
}
Другие вопросы по тегам