C++Builder
  Начало   Форум   Помощь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: iBeacon как настроить?  (Прочитано 2484 раз)
SilverFish
Участник
**

Сказали спасибо: +14/-6
Offline Offline

Сообщений: 789


« : 06 мая 2016, 21:10:07 »

У меня есть это устройство: http://www.banggood.com/ru/Bytereal-iBeacon-BLE-4_0-Near-Field-Orientation-Module-p-965539.html
На нем наклеена бумажка с надписью: ID BR506671. Исходя из документации: http://docwiki.embarcadero.com/RADStudio/XE8/en/Using_Beacons#Manufacturer_Information
для соединения RAD и компонента TBeacon->TBeaconRegionCollection, надо настроить UUID.
А как понять какой UUID у моего устройства? Устройство пришло из магазина по почте и на нем бумажка с ID и все. У кого есть опыт, как такую штуковину подсоединить к RAD?
Тестировать буду этим кодом:
Код:
void __fastcall TForm1::UpdateProximity( IBeacon * const ABeacon ) {

switch ( ABeacon->Proximity )
{
case TBeaconProximity::Immediate:
Memo1->Lines->Add( String(ABeacon->GetMinor()) + L": Очень близко" );
break;
case TBeaconProximity::Near:
Memo1->Lines->Add( String(ABeacon->GetMinor()) + L": Рядом" );
break;

case TBeaconProximity::Far:
Memo1->Lines->Add( String(ABeacon->GetMinor()) + L": Далеко" );
break;

case TBeaconProximity::Away:
Memo1->Lines->Add( String(ABeacon->GetMinor()) + L": Выход из зоны" );
break;
};
}

void __fastcall TForm1::Beacon1BeaconEnter(TObject * const Sender, IBeacon * const ABeacon,
          const TBeaconList CurrentBeaconList)
{
  UpdateProximity( ABeacon );
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Beacon1BeaconProximity(TObject * const Sender, IBeacon * const ABeacon,
          TBeaconProximity Proximity)
{
 UpdateProximity( ABeacon );
}

Источник: http://community.embarcadero.com/index.php/blogs/entry/developer-skill-sprint-proximity-awareness-with-beacons

Спасибо.
Записан
SilverFish
Участник
**

Сказали спасибо: +14/-6
Offline Offline

Сообщений: 789


« Ответ #1 : 09 мая 2016, 11:51:40 »

Удалось сменить uuid с помощью RealKit apk с этого сайта: http://www.bytereal.com

Код выше оказался полностью рабочим в RAD10.1. Получаю в Memo информацию при перемещении бикона по квартире. Улыбка

Два момента:
- надо добавить разрешения в приложение на блютус и блютус админ.
- добавить код т.к. не сразу заметила, что по умолчанию в инспекторе объектов false:

Код:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 Beacon1->Enabled = true;
}
Телефон GSmart Akta A4.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в: