我正在使用SocketRocket,但我无法让它在后台传递消息。当我再次打开该应用程序时,它会恢复连接(无需重新连接)并且所有消息都会立即进入。
这是我的连接代码:
- (void)_reconnect {
_websocket.delegate = nil;
[_websocket close];
NSString *host = @"ws://localhost:3030/primus";
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:host]];
[request setValue:[NSString stringWithFormat:@"<%@>", apiKey] forHTTPHeaderField:@"Authentication"];
_websocket = [[SRWebSocket alloc] initWithURLRequest:request];
[_websocket setDelegateOperationQueue:[NSOperationQueue new]];
_websocket.delegate = self;
[_websocket open];
if (DEBUG) {
NSLog(@"Using: %@", host);
}
}
我也试过没有
[_websocket setDelegateOperationQueue:[NSOperationQueue new]];
行,但这无济于事。
你知道发生了什么吗?
谢谢!