1
votes

I know that apple publish the iBeacon based on Bluetooth 4.0 protocol.

In any bluetooth device, if we code device with the following:

  0x4c,
  0x00,
  0x02,
  0x15,

means that presents this bluetooth device is a iBeacon bluetooth device.

static uint8 advertData1[] = 
{ 
  // 25 byte ibeacon advertising data
  // Preamble: 0x4c000215
  // UUID: E2C56DB5-DFFB-48D2-B060-D0F5A71096E0
  // Major: 1 (0x0001)
  // Minor: 1 (0x0001)
  // Measured Power: -59 (0xc5)
  0x1A, // length of this data including the data type byte
  GAP_ADTYPE_MANUFACTURER_SPECIFIC, // manufacturer specific advertisement data type
  0x4c,
  0x00,
  0x02,
  0x15,
  0xe2,
  0xc5,
  0x6d,
  0xb5,
  0xdf,
  0xfb,
  0x48,
  0xd2,
  0xb0,
  0x60,
  0xd0,
  0xf5,
  0xa7,
  0x10,
  0x96,
  0xe0,
  0x00,
  0x00,
  0x00,
  0x07,
  0xc5
};

my question is if i define my own protocol, that means i change this

  0x4c,
  0x00,
  0x02,
  0x15,

is there a possibility that i can identify my own defined bluetooth device via iphone without addtional identifying device on the iphone.

does apple support customrized ibeacon?

EDIT according to what davidgyoung said, i did some research on stackoverflow to share with others with ibeacon quesitons

  1. iOS CoreBluetooth / iBeacon: Advertise an iBeacon and a peripheral service concurrently comments are very helpful

  2. Using CoreBluetooth with iBeacons

  3. iOS 7 Tutorial Series: Core Location Beacons

  4. Using CoreBluetooth with iBeacons

  5. iBeacon Monitoring in the Background and Foreground

1

1 Answers

0
votes

Yes, you can certainly define your own custom Bluetooth LE advertisement on iOS and use it as a beacon.

But you will not be able to use CoreLocation APIs to detect these nonstandard iBeacons. You must use CoreBluetooth APIs, and this will impose restrictions on permissions and background usage.