Чи можливо, щоб мій MacBook став iBeacon?


14

Чи можливо, щоб мій MacBook став iBeacon ?

Я хотів би, щоб він транслював себе на пристрої iOS, які підтримують iBeacons. Якщо це можливо, які технічні вимоги до комп'ютера (наприклад, чи достатньо Bluetooth 4.0?), І як це зробити?

Оновлення : я в першу чергу шукаю спосіб це зробити без додаткового обладнання (оскільки в моєму MacBook вже вбудований Bluetooth).


Дивіться stackoverflow.com/a/19741615/35690 для подібного питання.
Розсудливий

Відповіді:


6

Якщо ви програміст, я розмістив інструкції щодо використання 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/


4

1) Вам потрібно отримати мікросхему передавача / приймача Bluetooth 4.0 BLE (Bluetooth з низькою енергією) для приєднання та встановлення у вашому MacBook.

Це дозволить вам передавати сигнал маяка.

2) Вам потрібно буде створити або придбати програмне забезпечення, яке могло б правильно використовувати чіпсет.

Це дозволить вам розпізнати наявність прилеглих пристроїв із підтримкою маяка, таких як нові iPhone, та взаємодіяти з ними належним чином.

Ось веб-сайт, який пояснює докладніше про iBeacons та BLE з кількома хорошими відео-прикладами (насправді пов’язані з "iBeacon" в оригінальному запитанні):

Apple iBeacons пояснив - що це таке, і чому він змінює - Pocket-lint

Ось посилання на компанію, що продає передавачі / приймачі BLE для комерційного використання (згадується у статті вище). Цей сайт також пропонує огляд того, як працює технологія:

Estimote Beacons - контекст реального світу для ваших додатків

Цей веб-сайт надає детальну інформацію про BLE:

Низька енергія | Веб-сайт технології Bluetooth

Тоді я б сказав, надіньте інженерну шапку і починайте шукати чіпсети та програмні рішення!

Веселіться!

Редагувати:

Інша назва BLE - Bluetooth Smart. Шукайте апаратне та / або програмне забезпечення Bluetooth Smart (лише BLE) або Bluetooth Smart Ready (чи є як Bluetooth, так і BLE). Деякі списки розміщені на веб-сайті технології Bluetooth (те саме, що вище), і пошук у Google відображає кілька створених додатків.

Ще один пошук пропонує документ для розробників Apple:

Правила дизайну Bluetooth щодо Apple (від центру розробників)

і інструмент швидкого розвитку для розробників Apple (від bluetooth.org):

Apple Developers | Портал розвитку Bluetooth


Вибачте, я повинен був уточнити, я шукаю рішення, яке не потребує зовнішнього обладнання. Оскільки в деяких MacBooks вже вбудований Bluetooth 4.0, я сподівався, що існує рішення, яке може використовувати це замість того, щоб додавати більше обладнання.
Розсудливий

Вимоги однакові - тож ваш MacBook - це Smart Smart Ready. Тепер вам потрібно знайти (або написати власне) програмне забезпечення, щоб скористатися технологією.
leanne

У свою відповідь я додав кілька посилань та додаткову інформацію, щоб допомогти в додаткових дослідженнях.
leanne

2

Я використовував невеликий інструмент під назвою MactsAsBeacon. Все, що вам потрібно зробити, це завантажити .app файл і відкрити його. Потім це дозволяє встановити значення UUID, Major, Minor та Power.

https://github.com/timd/MactsAsBeacon


Приємна знахідка! Це ідеально підходить до проблеми.
Ян Ч.

0

Створіть VM, який буде працювати як iBeacon.

http://developer.radiusnetworks.com/ibeacon/virtual.html

:)


Ви розмістили це як відповідь, що стосується лише речей, які безпосередньо відповідають на поставлене запитання.
Даниїл

Ця відповідь стосується питання, хоча я вважаю, що це вимагає зовнішнього обладнання, яке ОП не хоче. Використання віртуальної машини в статті дасть вам функціонування iBeacon на MacBook.
mttrb
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.