2011-03-14 263 views
1

我是iphone開發新手,我只想知道是否可以通過編程方式在藍牙上開關?以編程方式打開藍牙

+0

這是一個非常一般問題 - 在這個時候,你可以使用藍牙GameKit(多人遊戲)和無線耳機。 iPhone - >非iPhone發送數據不受支持。但是,您可以使用GameKit將數據發送到其他iOS設備。 – Pripyat 2011-03-14 13:11:53

+0

因爲您已更改您的問題:一旦連接對話框彈出並選擇藍牙,GameKit將啓用藍牙。 – Pripyat 2011-03-14 13:12:31

回答

3

可以通過使用代碼下面的行/關閉藍牙開關,但由於訪問蘋果的私有框架,你的應用可以在App store的推拒絕

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    // Override point for customization after application launch. 

#if TARGET_IPHONE_SIMULATOR 
    exit(EXIT_SUCCESS) ; 
#else 
    /* this works in iOS 4.2.3 */ 
    Class BluetoothManager = objc_getClass("BluetoothManager") ; 
    id btCont = [BluetoothManager sharedInstance] ; 
    [self performSelector:@selector(toggle:) withObject:btCont afterDelay:1.0f] ; 
#endif 
    return YES ; 
} 

#if TARGET_IPHONE_SIMULATOR 
#else 
- (void)toggle:(id)btCont 
{ 
    BOOL currentState = [btCont enabled] ; 
    [btCont setEnabled:!currentState] ; 
    [btCont setPowered:!currentState] ; 

} 
#endif 
0

出於某種原因,大衛·席費爾回答了你的問題,作爲兩個意見,所以我只是要重複他說的話:

這是一個非常普遍的問題 - 在這個時間點上,您可以使用藍牙GameKit(多人遊戲)和無線耳機。 iPhone - >非iPhone發送數據不受支持。但是,您可以使用GameKit將數據發送到其他iOS設備。

因爲您改變了您的問題:一旦連接對話框彈出並選擇藍牙,GameKit將啓用藍牙。

相關問題