MokoBeaconX_iOS
支持 pod, pod 'beaconXSDK', '~> 0.0.1'
导入头文件
导入 "MKEddystoneSDK.h"
1. 扫描
//delegate
[MKCentralManager sharedInstance].scanDelegate = self;
//scan
[[MKCentralManager sharedInstance] startScanPeripheral];
/*
@protocol MKEddystoneScanDelegate <NSObject>
- (void)didReceiveBeacon:(MKBaseReceiveBeacon *)beacon manager:(MKCentralManager *)manager;
@optional
- (void)centralManagerStartScan:(MKCentralManager *)manager;
- (void)centralManagerStopScan:(MKCentralManager *)manager;
@end
*/
2.连接到设备
2.1 中枢蓝牙状态变化和外设连接状态变化
[MKCentralManager sharedInstance].stateDelegate = self;
@protocol MKEddystoneCentralManagerDelegate <NSObject>
/**
Central Bluetooth status change
@param managerState //Central Bluetooth statue
@param manager //Central
*/
- (void)centralStateChanged:(MKEddystoneCentralManagerState)managerState manager:(MKCentralManager *)manager;
/**
Central and Peripheral connection status change
@param connectState //Peripheral connection status
@param manager //Central
*/
- (void)peripheralConnectStateChanged:(MKEddystoneConnectStatus)connectState manager:(MKCentralManager *)manager;
/**
Peripheral LockState changes
@param lockState lockState
@param manager manager
*/
- (void)eddystoneLockStateChanged:(MKEddystoneLockState)lockState manager:(MKCentralManager *)manager;
@end
2.2 连接到指定设备
[[MKCentralManager sharedInstance] connectPeripheral:peripheral password:password progressBlock:^(float progress) {
//connect progress
} sucBlock:^(CBPeripheral *peripheral) {
//connect success block
} failedBlock:^(NSError *error) {
//connect failed block
}];
3.调用数据接口
MKEddystoneInterface 包含所有数据接口部分,所有接口都以“块”形式进行回调。请注意,设置和读取数据时,需要将当前 SLOT 切换到目标 SLOT,否则将操作当前活跃的 SLOT。当当前 SLOT 类型为 iBeacon 时,使用 readEddystoneiBeaconAdvDataWithSucBlock:failedBlock: 方法读取 SLOT 数据。当当前 SLOT 类型为 非-iBeacon(URL/TLM/UID) 时,使用 readEddystoneAdvDataWithSucBlock:failedBlock: 方法读取 SLOT 数据。