-
Notifications
You must be signed in to change notification settings - Fork 1k
runtime_options_setting
liuyanwei edited this page Sep 29, 2015
·
1 revision
corebluetooth has lot Options can be setting in scanfor,connect and discover. so babybluetooth also be there.
//set options methor
-(void)setBabyOptionsWithScanForPeripheralsWithOptions:(NSDictionary *) scanForPeripheralsWithOptions
connectPeripheralWithOptions:(NSDictionary *) connectPeripheralWithOptions
scanForPeripheralsWithServices:(NSArray *)scanForPeripheralsWithServices
discoverWithServices:(NSArray *)discoverWithServices
discoverWithCharacteristics:(NSArray *)discoverWithCharacteristics;
//set options methor at channel
-(void)setBabyOptionsAtChannel:(NSString *)channel
scanForPeripheralsWithOptions:(NSDictionary *) scanForPeripheralsWithOptions
connectPeripheralWithOptions:(NSDictionary *) connectPeripheralWithOptions
scanForPeripheralsWithServices:(NSArray *)scanForPeripheralsWithServices
discoverWithServices:(NSArray *)discoverWithServices
discoverWithCharacteristics:(NSArray *)discoverWithCharacteristics;
example:
/*setting babyOptions
it's where use in corebluetooth . if empty,pass nil
- [centralManager scanForPeripheralsWithServices:scanForPeripheralsWithServices options:scanForPeripheralsWithOptions];
- [centralManager connectPeripheral:peripheral options:connectPeripheralWithOptions];
- [peripheral discoverServices:discoverWithServices];
- [peripheral discoverCharacteristics:discoverWithCharacteristics forService:service];
you also can use this methor at channel:
[baby setBabyOptionsAtChannel:<#(NSString *)#> scanForPeripheralsWithOptions:<#(NSDictionary *)#> connectPeripheralWithOptions:<#(NSDictionary *)#> scanForPeripheralsWithServices:<#(NSArray *)#> discoverWithServices:<#(NSArray *)#> discoverWithCharacteristics:<#(NSArray *)#>]
*/
//scan options->CBCentralManagerScanOptionAllowDuplicatesKey:multiple discoveries of an advertising peripheral are not coalesced into a single discovery event.
NSDictionary *scanForPeripheralsWithOptions = @{CBCentralManagerScanOptionAllowDuplicatesKey:@YES};
/*connect options -> only works in background model
CBConnectPeripheralOptionNotifyOnConnectionKey :if connect in background ,show alert。
CBConnectPeripheralOptionNotifyOnDisconnectionKey :if disconnect in background ,show alert。。
CBConnectPeripheralOptionNotifyOnNotificationKey:
if receive notification in background ,show alert。
*/
NSDictionary *connectOptions = @{CBConnectPeripheralOptionNotifyOnConnectionKey:@YES,
CBConnectPeripheralOptionNotifyOnDisconnectionKey:@YES,
CBConnectPeripheralOptionNotifyOnNotificationKey:@YES};
[baby setBabyOptionsAtChannel:channelOnPeropheralView scanForPeripheralsWithOptions:scanForPeripheralsWithOptions connectPeripheralWithOptions:connectOptions scanForPeripheralsWithServices:nil discoverWithServices:nil discoverWithCharacteristics:nil];