2

GameKit と PeerPickerController を介して Bluetooth 接続を確立し、1 つのデバイスが別のデバイスにコントロールを送信できるようにするメトロノーム アプリをプログラミングしています。

アプリは正常に読み込まれ、他のデバイスを検索し、Xcode のデバッガー ウィンドウで接続されていると表示されますが、次のエラーですぐにクラッシュします。

wait_fences: 応答を受信できませんでした: 10004003

2012-05-27 20:51:50.820 MetroConnect[5689:707] -[MetroConnectViewController セッション:didFailWithError:]: 認識されないセレクターがインスタンス 0x1793f0 に送信されました 2012-05-27 20:51:50.824 MetroConnect[5689:707] * 終了アプリdue to uncaught exception 'NSInvalidArgumentException', reason: '-[MetroConnectViewController session:didFailWithError:]: unrecognized selector sent to instance 0x1793f0' * First throw call stack: (0x3126388f 0x375a1259 0x31266a9b 0x31265a83 0x311c0650 0x34141b5f 0x311c21fb 0x31b7f747 0x31237ad3 0x3123729f 0x31236045 0x311b94a5 0x311b936d 0x33233439 0x3091ccd5 0x5023 0x4fc8) 例外をスローして終了します (lldb)

どこが間違っているのか誰か教えてくれませんか?2つのデバイス間でチャットメッセージを送信する同様の方法で別のアプリを作成しましたが、これは正常に機能し、この実装とメトロノームの実装の間に違いは見られません.

4

1 に答える 1

0

あなたは GKSession デリゲートのようですが、必要なデリゲート メソッドを実装していません。結局のところ、それらは何らかの理由で必要です。session:didFailWithError: メソッドを次のように実装し、残りが適切に実装されていることを確認します。

- (void)session:(GKSession *)session didFailWithError:(NSError *)error {
    NSLog(@"Session connection failed with error %@",[error localizedDescription]);
}
于 2012-05-27T20:14:01.230 に答える