作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Swift 开发一个 iOS 应用程序,它通过套接字连接到 Android 设备。我已经实现了 Starscream 并且能够连接到其他设备。我的问题是,当我在 websocketDidConnect 委托(delegate)方法上打印某些内容时,它不会打印。此外,当我打印 socket.isConnected 时,它会打印 false。请帮助我。谢谢。也欢迎使用红蜘蛛的其他替代品,谢谢!
这是我的代码:
import Starscream
class SettingsViewController: UIViewController, UITextFieldDelegate, WebSocketDelegate{
override func viewDidLoad() {
super.viewDidLoad()
let socket = WebSocket(url: NSURL(string: "ws://\(ipAddressTextField.text!):4000/")!)
socket.connect()
print("socket.isConnected \(socket.isConnected)") //this one is false
socket.onConnect = {
print("Connected...") // does not print
}
socket.onDisconnect = { (error: NSError?) in
print("websocket is disconnected: \(error?.localizedDescription)") // this one prints when I turn the wifi off
}
socket.onData = { (data: NSData) in
print("got some data: \(data.length)")
}
}
func websocketDidConnect(ws: WebSocket) {
print("websocket is connected")
}
func websocketDidDisconnect(ws: WebSocket, error: NSError?) {
if let e = error {
print("websocket is disconnected: \(e.localizedDescription)")
} else {
print("websocket disconnected")
}
}
func websocketDidReceiveMessage(ws: WebSocket, text: String) {
print("Received text: \(text)")
}
func websocketDidReceiveData(ws: WebSocket, data: NSData) {
print("Received data: \(data.length)")
}
}
最佳答案
您需要将其作为类属性,否则它将在退出 viewDidLoad 方法时被释放。
关于ios - 红蜘蛛的 socket.isConnected 总是返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36792175/
我正在尝试连接到我的本地主机套接字(工作正常),如下所示: import Starscream class ViewController: UIViewController { let conn
我已经使用 pod 安装了 Crashlytics。 pod 'Fabric' pod 'Crashlytics' 但在更新 pod 文件后 Starscream 1.1.4(原为 1.1.1) 也会
我是一名优秀的程序员,十分优秀!