swift NWS:应用程序服务是可扩展的吗?

3pmvbmvn  于 2023-11-16  发布在  Swift
关注(0)|答案(1)|浏览(107)

我尝试使用NWBrowser/NWbrowser浏览peers,但浏览器只在使用.bonjour时看到peers,而不是.applicationService。Apple的TicTacToe示例也使用'bonjour'来查找peers,并使用'applicationService'来查找实际协议。是否无法直接浏览'applicationService'侦听器?
收听者

let params = NWParameters.tcp // using .applicationService results in 'Network is down' error
let listener = try NWListener(using: params)
listener.service = NWListener.Service(applicationService: "MyApp")
listener.stateUpdateHandler = { ... }
listener.newConnectionHandler = { ... }
listener.start(queue: .main)

字符串
浏览器

let params = NWParameters()
let browser = NWBrowser(for: .applicationService(name: "MyApp"), using: params)
browser.stateUpdateHandler = { newState in
    print('browser:', newState)
}
browser.browseResultsChangedHandler = { ... }
browser.start(queue: .main)


侦听器和浏览器都达到“就绪”状态,但浏览器找不到任何对等体。

bfrts1fy

bfrts1fy1#

看起来此“applicationService”需要使用DeviceDiscoveryUI:https://developer.apple.com/documentation/devicediscoveryui/devicepicker
我还没有弄清楚细节,但我假设这是一些应用程序通过WLAN与自己通信的方式。

相关问题