gpt4 book ai didi

iPhone 屏幕锁定后 iOS 套接字反复断开连接

转载 作者:行者123 更新时间:2023-11-30 12:01:41 24 4
gpt4 key购买 nike

当我们对 iPhone 屏幕进行屏幕锁定并返回时,Socket 会在每 10 秒后重复断开连接。

我已经在断开连接事件中编写了套接字连接代码。因此,每当套接字断开连接时,它都会自动连接。

我已经采用了标志isWantToConnect - 该标志的工作是在不调用 closeConnection 方法的情况下,套接字断开连接,然后再次连接套接字。

    Initialization:
var socket = SocketIOClient(socketURL: URL(string: kUrlApi.BaseUrl)!, config: [.log(false),.reconnects(false),.forcePolling(true),.forceWebsockets(true)])
var isWantToConnect = false

Connection Methods:
func establishConnection() {
isWantToConnect = true
if let objSocketEngine = SocketIOManager.sharedInstance.socket.engine, objSocketEngine.connected {
return
} else {
socket.connect()
}
}

func closeConnection() {
isWantToConnect = false
guard let objSocketEngine = SocketIOManager.sharedInstance.socket.engine, objSocketEngine.connected else{
return
}
socket.disconnect()
}

Disconnect Subscriber:
func addDisconnectHandler() {
socket.on(clientEvent: .disconnect) { (dataArray, ack) in
print("Socket Disconnected !!! SocketSid : \(self.socket.sid ?? "") Time : \(Date())")
if self.isWantToConnect{
self.perform(#selector(self.establishConnection), with: nil, afterDelay: 0.1)
}
}
}

This is logs:

Socket Error !!! SocketSid :
Socket StatusChange !!! SocketSid :
Socket StatusChange !!! SocketSid :
Socket Disconnected !!! SocketSid : Time : 2017-11-06 08:06:45 +0000
Socket StatusChange !!! SocketSid :
Socket StatusChange !!! SocketSid : BjnJLzWfWeRSx8IFAABu
Socket Connected Successfully !!! SocketSid : BjnJLzWfWeRSx8IFAABu Time : 2017-11-06 08:06:46 +0000
Socket StatusChange !!! SocketSid : BjnJLzWfWeRSx8IFAABu
Socket StatusChange !!! SocketSid : BjnJLzWfWeRSx8IFAABu
Socket Disconnected !!! SocketSid : BjnJLzWfWeRSx8IFAABu Time : 2017-11-06 08:06:56 +0000
Socket StatusChange !!! SocketSid :
Socket StatusChange !!! SocketSid : tMPTz3G4vcmODifgAABv
Socket Connected Successfully !!! SocketSid : tMPTz3G4vcmODifgAABv Time : 2017-11-06 08:06:57 +0000
Socket StatusChange !!! SocketSid : tMPTz3G4vcmODifgAABv
Socket StatusChange !!! SocketSid : tMPTz3G4vcmODifgAABv
Socket Disconnected !!! SocketSid : tMPTz3G4vcmODifgAABv Time : 2017-11-06 08:07:07 +0000
Socket StatusChange !!! SocketSid :
Socket StatusChange !!! SocketSid : DGNxKJ6uH6rnAeusAABw
Socket Connected Successfully !!! SocketSid : DGNxKJ6uH6rnAeusAABw Time : 2017-11-06 08:07:07 +0000
Socket StatusChange !!! SocketSid : DGNxKJ6uH6rnAeusAABw
Socket StatusChange !!! SocketSid : DGNxKJ6uH6rnAeusAABw
Socket Disconnected !!! SocketSid : DGNxKJ6uH6rnAeusAABw Time : 2017-11-06 08:07:18 +0000
Socket StatusChange !!! SocketSid :
Socket StatusChange !!! SocketSid : fWE8kHldjkxnnDgsAABx
Socket Connected Successfully !!! SocketSid : fWE8kHldjkxnnDgsAABx Time : 2017-11-06 08:07:19 +0000
Socket StatusChange !!! SocketSid : fWE8kHldjkxnnDgsAABx
Socket StatusChange !!! SocketSid : fWE8kHldjkxnnDgsAABx
Socket Disconnected !!! SocketSid : fWE8kHldjkxnnDgsAABx Time : 2017-11-06 08:07:29 +0000
Socket StatusChange !!! SocketSid :
Socket StatusChange !!! SocketSid : 2FfWJL54HfyvWK62AABy
Socket Connected Successfully !!! SocketSid : 2FfWJL54HfyvWK62AABy Time : 2017-11-06 08:07:29 +0000
Socket StatusChange !!! SocketSid : 2FfWJL54HfyvWK62AABy
Socket StatusChange !!! SocketSid : 2FfWJL54HfyvWK62AABy
Socket Disconnected !!! SocketSid : 2FfWJL54HfyvWK62AABy Time : 2017-11-06 08:07:40 +0000
Socket StatusChange !!! SocketSid :
Socket StatusChange !!! SocketSid : AZVawjUwtF84VBB8AABz
Socket Connected Successfully !!! SocketSid : AZVawjUwtF84VBB8AABz Time : 2017-11-06 08:07:41 +0000

最佳答案

尝试使用这个库:非常有用并且工作完美! https://github.com/daltoniam/Starscream

关于iPhone 屏幕锁定后 iOS 套接字反复断开连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47133931/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com