GCDWebservers后台模式不能在设备上工作



我使用GCDWebservers来启动http服务。我希望它在后台模式下仍然接受连接。这是我的源代码:

func startServer (){
    do {
        webServer?.stop()
        webServer?.removeAllHandlers()
            
        try self.webServer?.start(options: [GCDWebServerOption_BonjourName: "", GCDWebServerOption_BonjourType: IMS_DOMAIN, GCDWebServerOption_Port : IMS_SERVICE_PORT, GCDWebServerOption_AutomaticallySuspendInBackground: false])
    } catch {
        print("Start server error: ", error.localizedDescription)
    }
        
        
    print("bonjour type", self.webServer?.bonjourType)
}

它在模拟器上工作,但在实际设备上不起作用。当应用程序再次进入前台时,打印出以下消息:

dnssd_clientstub read_all(10) DEFUNCT

[ERROR]你好注册错误-72000(域10)

请帮帮我。

当应用程序在后台运行时(除了最开始的几分钟),不可能运行web服务器。参见"GCDWebServer &详细信息请参见GCDWebServer README文件中的"iOS Apps的后台模式"章节:

通常情况下,你必须在应用程序在后台时停止任何网络服务器,并在应用程序返回前台时重新启动它们。

相关内容

  • 没有找到相关文章

最新更新