0

嗨,我正在尝试在两次 ipod 触摸之间构建一个简单的聊天客户端,作为学习 Bonjour 的开始。我很好地连接了两个设备,一切似乎都可以正常工作。我可以毫无问题地发送数据(没有错误),但是我什么时候应该接收数据而我没有。当我查看日志时,我看到“GCKSessionEvent_IncomingOOBPacket:未能创建 oob 消息”我已经尝试用谷歌搜索该消息的一部分以寻找答案,但实际上只有 0 个结果。我希望这里有人可能有答案。

谢谢

KC

回复评论:

这三个电话是

-(IBAction)SendMessage
{   
NSData* aData = [[NSData alloc] initWithData:[typeText.text dataUsingEncoding: NSUTF8StringEncoding]];
    NSUTF8StringEncoding];
    [self sendDataToPeers:aData];
}

-(void)sendDataToPeers:(NSData*)data
{
    NSError* err;
    BOOL didSend = [self.mySession sendDataToAllPeers:data withDataMode:GKSendDataReliable error:&err];
}

-(void) receiveData:(NSData*)data fromPeer:(NSString*)peer inSession:(GKSession*)session context:(void*)context
{
    NSString* text = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]autorelease];
    self.displayText.text = text;
}
4

2 回答 2

0

我也在用 Wifi 和 GKSession 做 iphone 到 iphone。在中止会话(也称为调试或崩溃)之后,Bonjour(或 GKsessions)似乎感到困惑,同样的情况也发生在我身上。在 OS 3.x 中没有消息,只有挂起。在 OS 4.x 中,我收到消息“GCKSessionEvent_IncomingOOBPacket ...”。我不知道这意味着什么,但重新启动 GKsession 或重新连接或有时只是等待解决问题。我怀疑由于对等方/接收方混乱,出站数据的缓冲区可能已满。

于 2010-07-08T19:30:41.947 回答
0

Kendrick,假设您使用的是 4.0 SDK,那么您可能是 SOL。GKSession 在最近引入的 4.0 SDK(崩溃、错误、缓慢)中有许多显示停止器错误。此消息是由于其中之一。我知道,因为当他们发布 4.0 时我正要提交我的 GameKit 应用程序,现在我正在等待 4.1 以便我可以提交它。4.1 Beta 确实修复了许多这些问题,但遗憾的是,它仍然无法像在 3.1.3 上那样工作。

于 2010-07-19T06:32:57.600 回答