ios判断蓝牙是否开启

在做ibeacon 模块时,首先要判断蓝牙是否开着。那么问题来了,怎么样用代码判断蓝牙开着呢?
查了API,发现CBCentralManager可以实现。

首先要完成协议 CBCentralManagerDelegate

@property CBCentralManager *centralManager;

self.centralManager = [[CBCentralManager alloc] initWithDelegate:self queue:nil options:nil];

-(void)centralManagerDidUpdateState:(CBCentralManager *)central
{
    //第一次打开或者每次蓝牙状态改变都会调用这个函数
    if(central.state==CBCentralManagerStatePoweredOn)
    {
        NSLog(@"蓝牙设备开着");
        _canShake=YES;
    }
    else
    {
        NSLog(@"蓝牙设备关着");

        UIAlertView *alterView=[[UIAlertView alloc]initWithTitle:@"亲,请打开蓝牙哦" message:@"打开蓝牙摇一摇,优惠就会出现哦~" delegate:self cancelButtonTitle:@"好的。" otherButtonTitles: nil];
        [alterView show];
        _canShake=NO;
    }
}

你可能感兴趣的:(iOS)