BLUIBeacon Class Reference

Inherits from BLUBeacon : NSObject
Declared in BLUIBeacon.h

Overview

BLUIBeacon objects represent an Apple iBeacon.

A BLUIBeacon can be used in two different ways: It can represent a light wrapper around a CoreLocation CLBeacon object during a scan for iBeacons. It can be used to create an iBeacon configuration for setting up a configurable beacon.

properties

  proximityUUID

The iBeacon’s proximity UUID.

@property (nonatomic, readonly) NSUUID *proximityUUID

Discussion

The iBeacon’s proximity UUID.

Declared In

BLUIBeacon.h

  major

The iBeacon’s major value.

@property (nonatomic, readonly) NSNumber *major

Discussion

The iBeacon’s major value.

Declared In

BLUIBeacon.h

  minor

The iBeacon’s minor value.

@property (nonatomic, readonly) NSNumber *minor

Discussion

The iBeacon’s minor value.

Declared In

BLUIBeacon.h

  accuracy

The accuracy of the last received iBeacon ranging event.

@property (nonatomic, readonly) BLULocationAccuracy accuracy

Discussion

The accuracy of the last received iBeacon ranging event.

Declared In

BLUIBeacon.h

Rotation properties

  rotationKey

A 128bit key represented by NSData and used to encrypt and rotate the beacon’s rotation identifier.

@property (nonatomic, readonly, nullable) NSData *rotationKey

Discussion

A 128bit key represented by NSData and used to encrypt and rotate the beacon’s rotation identifier.

This key is only available when iBeacon decoding has been enabled for this beacon. For security reasons this key can not be read back from the beacon once it was written to it.

See Also

Declared In

BLUIBeacon.h

  rotationIdentifier

A number representing the beacon’s rotation identifier.

@property (nonatomic, readonly, nullable) NSNumber *rotationIdentifier

Discussion

A number representing the beacon’s rotation identifier.

This value is only available if the beacon was found via Core Location iBeacon monitoring and iBeacon decoding was enabled. For security reasons this value can not be read back from the beacon once it was written to it.

See Also

Declared In

BLUIBeacon.h

  decoding

A boolean specifying whether rotation identifier decoding has been enabled for this beacon.

@property (nonatomic, readonly, getter=isDecoding) BOOL decoding

Discussion

A boolean specifying whether rotation identifier decoding has been enabled for this beacon.

Declared In

BLUIBeacon.h

Initialization

– initWithProximityUUID:major:minor:

Initializes a BLUIBeacon instance with a proximity UUID, a major and a minor value.

- (instancetype)initWithProximityUUID:(NSUUID *)proximityUUID major:(NSNumber *)major minor:(NSNumber *)minor

Parameters

proximityUUID

The iBeacon’s proximity UUID.

major

The iBeacon’s major value.

minor

The iBeacon’s minor value.

Return Value

Returns a newly initialized BLUIBeacon instance.

Discussion

Initializes a BLUIBeacon instance with a proximity UUID, a major and a minor value.

Declared In

BLUIBeacon.h

Rotation identifier decoding

– enableIBeaconDecoding:withRotationKey:identifierBitLength:

Toggles the decoding of the beacon’s encrypted rotation identifier using the specified rotation key and rotation identifier bit length. Rotation identifier decoding should only be enabled for beacons that have been retrieved using Core Location monitoring and that were previously setup to use the BLUIBeaconRotationModeKeyEncryption rotation mode.

- (void)enableIBeaconDecoding:(BOOL)enable withRotationKey:(NSData *)rotationKey identifierBitLength:(NSNumber *)identifierBitLength

Parameters

enable

YES to enable, NO to disable major and minor decoding.

rotationKey

NSData containing the 128bit rotation key that the beacon has been setup with.

identifierBitLength

An NSNumber representing the length in bits of the rotation identifier that the beacon has been setup with.

Discussion

Toggles the decoding of the beacon’s encrypted rotation identifier using the specified rotation key and rotation identifier bit length. Rotation identifier decoding should only be enabled for beacons that have been retrieved using Core Location monitoring and that were previously setup to use the BLUIBeaconRotationModeKeyEncryption rotation mode.

The decoded value will be stored in the beacon’s rotationIdentifier property. Its value will only be valid if you specify the same rotation key and bit length that was used to setup the beacon’s identifier rotation.

Declared In

BLUIBeacon.h