0

を使用GKPeerPickerControllerすると、2 つの iOS デバイスを bluetogether 経由で簡単に接続できますが、GKSessionModePeer モードでのみ接続できます。

GKSessionModeServerコードを使用してモードでセッションを作成します

GKSession *session=[[GKSession alloc] initWithSessionID:nil displayName:nil sessionMode:GKSessionModeServer];
session.delegate = self;
session.available = YES;
// Set data handler.
[session setDataReceiveHandler:self withContext:nil];

GKSessionModeClientそして、別のデバイスでモードでセッションを作成するこのコード

GKSession *session=[[GKSession alloc] initWithSessionID:nil displayName:nil sessionMode:GKSessionModeClient];
session.delegate = self;
session.available = YES;
// Set data handler.
[session setDataReceiveHandler:self withContext:nil];

設定するとsession.available =YES、何らかのdelegateメソッドが呼び出されます。しかし、何も起こりませんでした。

api を使用して他のデバイスを見つけて、それらを接続するにはどうすればよいですか? または、Bluetooth経由でデータを転送できる他の方法はありますか?

4

1 に答える 1

0

最後に修正します。session.available=YESを設定すると、他のセッションとメソッドが検索されます。

- (void)session:(GKSession *)session peer:(NSString *)peerID didChangeState:(GKPeerConnectionState)state

と呼ばれます。

検索中はセッションを解放しないでください!!!

于 2013-02-22T08:22:21.830 に答える