[英]iOS 5: programmatically turn bluetooth on and off
我看到以编程方式打开和关闭蓝牙是一个“私人api”的东西,在iOS的流行版本中,将得到苹果itunes商店拒绝的应用程序。
但是在iOS 5中,我知道以前私有的东西不再是私密的,比如以编程方式改变屏幕亮度。 执行此操作将不再使用iOS 5在iTunes中拒绝您的应用,因此我想知道其他内容是否公开可用,例如蓝牙适配器。
CoreBluetooth在iOS 5中公开发售。不幸的是,它仅适用于新的蓝牙LE(低功耗)设备。
我设法在运行OS 5.1的iPod上成功使用Private BluetoothManager API。
所以我说它仍然有效。
我在这里提供了一个样本: http : //www.pocketmagic.net/?p = 2827 ,在文章的底部。 在那里,您不仅可以阅读蓝牙ON,OFF,还可以阅读远程蓝牙设备,并在用户界面中列出。
我需要以编程方式启用蓝牙。 我所做的是使用GKPeerPickerController,这要求你启用蓝牙,如果它尚未打开。 然后在调用GKPeerPickerControllerDelegate时,我解除了选择器。
不完美,你会在短时间内看到“搜索设备”,但它缺乏另一种方法(据我所知)。
GKPeerPickerController * peerpicker = [[GKPeerPickerController alloc]init];
peerpicker.delegate = self;
peerpicker.connectionTypesMask = GKPeerPickerConnectionTypeNearby;
[peerpicker show];
当peerpicker准备好搜索时,会有一个委托方法返回一个GKSession供选择器使用。 这是你解雇它的地方。
-(GKSession*)peerPickerController:(GKPeerPickerController *)picker sessionForConnectionType:(GKPeerPickerConnectionType)type
{
[picker dismiss];
[picker autorelease];
return nil;
}
并且您的应用不会被拒绝。
这不公开。 你会被拒绝。
根据iOS 5.0发行说明 ,没有提及任何公开可用的蓝牙功能。
不,蓝牙仍然无法使用:(
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.