Я пытаюсь изучить Bluetooth Beacon с помощью Rad Pack Seattle. Я пробую все образцы маяков, но ни один из них не работает. Я попробовал все 6 из них на трех разных P c (2 Windows 7 и один Server 2012), запустив код на 4 разных смартфонах android (LG и Nokia). Я установил новые версии Сиэтла на все P c. Большинство образцов выходят из строя в течение нескольких секунд. Иногда они зависают, иногда трескают sh, один из них, кажется, работает, но он просто не видит маяки, на которые я его направляю (и я знаю, что это работает, так как у меня есть несколько готовых программ, которые найдут маяки, которые я хочу, чтобы он ) et c. Один из них, самый простой, как мне кажется (в нем всего 12 строк), не работает с сообщением о «дубликатах записи».
Итак, я начинаю думать, что что-то не так с Rad Pack Seattle. Но это не может быть правдой, так что, наверное, я что-то делаю. Но что? К сожалению, таких вопросов очень мало.
Если я спрашиваю не в том месте, пожалуйста, укажите мне правильное направление.
Любые подсказки будут оценены - очень много. ; -)
PoulK
Это демонстрация Simple Beacon
Цитата
Unit1;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, System.Beacon, FMX.Layouts, FMX.Memo,
System.Beacon.Components, FMX.StdCtrls, FMX.Controls.Presentation, FMX.ScrollBox;
type
TForm1 = class(TForm)
Beacon1: TBeacon;
Memo1: TMemo;
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure Beacon1BeaconEnter(const Sender: TObject; const ABeacon: IBeacon; const CurrentBeaconList: TBeaconList);
procedure Beacon1BeaconExit(const Sender: TObject; const ABeacon: IBeacon; const CurrentBeaconList: TBeaconList);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.fmx}
procedure TForm1.Beacon1BeaconEnter(const Sender: TObject; const ABeacon: IBeacon;
const CurrentBeaconList: TBeaconList);
begin
Memo1.Lines.Add('New Beacon');
Memo1.Lines.Add(Format( 'UUID: %s Major: %d Minor: %d',[ABeacon.GUID.ToString, ABeacon.Major, ABeacon.Minor]));
Memo1.Lines.Add('Current Beacons count :' + Length(CurrentBeaconList).toString);
end;
procedure TForm1.Beacon1BeaconExit(const Sender: TObject; const ABeacon: IBeacon; const CurrentBeaconList: TBeaconList);
begin
Memo1.Lines.Add('Beacon exited');
Memo1.Lines.Add(Format( 'UUID: %s Major: %d Minor: %d',[ABeacon.GUID.ToString, ABeacon.Major, ABeacon.Minor]));
Memo1.Lines.Add('Current Beacons count :' + Length(CurrentBeaconList).toString);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Beacon1.Enabled := True;
end;
end.