我正在研究BLE
(藍牙LE)應用程序,該應用程序與硬件設備連接。 我能夠發現並連接到設備,從設備讀取數據,將數據寫入設備。從BLE設備獲取通知
我在蘋果的BLE文檔中找不到什麼東西,當你靠近設備,應用程序靠近時,如何獲得通知。
我知道如何註冊到characteristic
通知,但只有當應用程序在後臺時纔會發生此通知。
我知道iBeacon
可以在應用程序關閉時檢測到藍牙,併發送通知,但是當設備發現某個的某個BLE時,我想要收到通知。
iBeacon,正在使用BLE UUID
和major and minor
字段,我不需要/不想要。我只想註冊一個來自BLE的某個UUID
的通知。
我這樣做,沒有任何迴應:
self.locationManager = [[CLLocationManager alloc] init];
self.locationManager.delegate = self;
[self initRegion];
- (void)initRegion
{
NSUUID *uuid = [[NSUUID alloc] initWithUUIDString:@"4AD3FADF-F179-4343-0000-000000000000"];
self.beaconRegion = [[CLBeaconRegion alloc] initWithProximityUUID:uuid identifier:@"BLE-NAME"];
[self.locationManager startMonitoringForRegion:self.beaconRegion];
}
- (void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region {
[self.locationManager startRangingBeaconsInRegion:self.beaconRegion];
NSLog(@"ENTER");
}
-(void)locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region {
[self.locationManager stopRangingBeaconsInRegion:self.beaconRegion];
NSLog(@"EXIT");
}