Якщо ви програміст, я розмістив інструкції щодо використання MacBook з Mavericks як iBeacon. Ви можете знайти інструкції з мого блогу на веб- сайті http://www.blendedcocoa.com/blog/2013/11/02/mavericks-as-an-ibeacon/
Якщо / Коли я отримаю можливість, я можу створити додаток, який можна використовувати для реклами iBeacon.
Це відповідь, яку я дав на аналогічне запитання щодо Stack Overflow
Mavericks не підтримує iBeacon у Core Location, доданий до iOS 7. Однак Mavericks тепер має можливість виконувати функції BLE периферійного пристрою. З огляду на те, що iBeacon є в основному периферійним пристроєм, він повинен бути (і справді є) можливим використовувати Mavericks як iBeacon.
Для того, щоб створити iBeacon на iOS, спочатку створіть CLBeaconRegion
об’єкт, а потім скористайтеся peripheralDataWithMeasuredPower:
методом, щоб отримати NSDictionary
необхідні рекламні дані для трансляції. Якщо ви NSDictionary
виймаєте вміст цього пристрою з пристрою iOS і використовуєте його на Mavericks, тоді ви отримуєте iBeacon.
Я створив клас, щоб зробити це простішим і дозволяти вам генерувати словник даних про рекламу безпосередньо на Mavericks. Вихідний код доступний за посиланням https://github.com/mttrb/BeaconOSX
BLCBeaconAdvertisementData
Клас приймають proximityUUID
, major
, minor
і калібровані значення потужності і створює NSDictionary , який може бути переданий в startAdvertising:
метод CBPeripheralManager
на Mavericks.
BLCBeaconAdvertisementData
Клас досить простий. Основна робота виконується наступним методом:
- (NSDictionary *)beaconAdvertisement {
NSString *beaconKey = @"kCBAdvDataAppleBeaconKey";
unsigned char advertisementBytes[21] = {0};
[self.proximityUUID getUUIDBytes:(unsigned char *)&advertisementBytes];
advertisementBytes[16] = (unsigned char)(self.major >> 8);
advertisementBytes[17] = (unsigned char)(self.major & 255);
advertisementBytes[18] = (unsigned char)(self.minor >> 8);
advertisementBytes[19] = (unsigned char)(self.minor & 255);
advertisementBytes[20] = self.measuredPower;
NSMutableData *advertisement = [NSMutableData dataWithBytes:advertisementBytes length:21];
return [NSDictionary dictionaryWithObject:advertisement forKey:beaconKey];
}
У мене є більш детальна публікація в блозі на веб- сайті http://www.blendedcocoa.com/blog/2013/11/02/mavericks-as-an-ibeacon/