1


私は3つのデバイス(mac、ipod、iphone)を持っており、それらはすべてWi-Fiに接続されています。2つのデバイスを接続するアプリケーションをテストしているとき、どちらもBluetoothをオンにするように求められますが、とにかく、Wi-Fiを使用したいと考えています。Wi-Fiの代わりにBluetoothを使用するように強制する方法。

GKPeerPickerController*     picker;
picker = [[GKPeerPickerController alloc]init];
picker.delegate = self;
picker.connectionTypesMask = GKPeerPickerConnectionTypeNearby; //Here, I suppose, program should use BlueTooth(but it uses the same network).
[picker show];

ただし、1つのデバイスがWi-Fiに接続されていない場合は、すべて正常に機能します。
connectionTypesMaskをGKPeerPickerConnectionTypeNearbyに設定すると、まずインターネット接続が使用され、次にBluetooth接続のみが使用されるのはなぜですか。Bluetoothのみを強制的に使用するにはどうすればよいですか?

4

2 に答える 2

0

私がそれをするために見つけた唯一の方法は、MacBookで空港をオフにし、BTをオンにすることです。

于 2011-03-30T11:31:01.610 に答える
0

GKPeerPickerControllerデリゲートメソッドのこのコードは、MarkandLaMarcheによるものです。iOS5の開発を開始します。

-(GKSession*)peerPickerController:(GKPeerPickerController *)picker sessionForConnectionType:(GKPeerPickerConnectionType)type
{
GKSession *theSession;
if (type == GKPeerPickerConnectionTypeNearby)
{
    theSession = [[GKSession alloc] initWithSessionID:kTicTacToeSessionID displayName:nil sessionMode:GKSessionModePeer];
}
return theSession;
}

BTセッションのみを接続するようになります。彼らのサンプルプロジェクトでは、peerPickerのいくつかの隠された機能により、デバイスはBlueToothをオンにするように要求します。

于 2013-06-17T14:12:18.390 に答える