【发布时间】:2015-11-01 05:27:37
【问题描述】:
我是快速编程的新手。我正在尝试从我的 ios 应用程序连接到服务器套接字。我有一个视图控制器,并且在一个按钮操作中我正在调用该函数以连接到套接字服务器
let socketConn = Connection();
socketConn.connect();
我已经在Connection类中将delegate设置为self,但是连接到服务器socket后我的stream函数没有触发。
class Connection : NSObject, NSStreamDelegate {
let serverAddress: CFString = "192.168.1.104"
let serverPort: UInt32 = 5012
private var inputStream: NSInputStream!
private var outputStream: NSOutputStream!
func connect() {
println("connecting...")
var readStream: Unmanaged<CFReadStream>?
var writeStream: Unmanaged<CFWriteStream>?
CFStreamCreatePairWithSocketToHost(nil, self.serverAddress, self.serverPort, &readStream, &writeStream)
self.inputStream = readStream!.takeRetainedValue()
self.outputStream = writeStream!.takeRetainedValue()
self.inputStream.delegate = self
self.outputStream.delegate = self
self.inputStream.scheduleInRunLoop(NSRunLoop.currentRunLoop(), forMode: NSDefaultRunLoopMode)
self.outputStream.scheduleInRunLoop(NSRunLoop.currentRunLoop(), forMode: NSDefaultRunLoopMode)
self.inputStream.open()
self.outputStream.open()
}
func stream(stream: NSStream, handleEvent eventCode: NSStreamEvent) {
println("stream event")
}
}
谁能帮我调试一下为什么在连接时调用流函数?
【问题讨论】: