簡體   English   中英

AltBeacon:Android 信標庫。 如何定義 Eddystone 的區域?

[英]AltBeacon: Android Beacon Library. How to define region for Eddystone?

我正在開發一個提供后台 Beacon 監控的應用程序。 當用戶從定義的區域進入信標時,我想開始測距。 不幸的是,我無法為 Eddystone 配置文件定義區域。 當我使用 Eddystone NamespaceID 創建區域對象時,標識符會引發解析異常...

Region region = new Region("backgroundRegion",Identifier.parse("f7826da6bc5b71e0893e"), null, null);

當標識符為 UUID 格式或整數時( https://altbeacon.github.io/android-beacon-library/javadoc/org/altbeacon/beacon/Identifier.html )解析工作正常。 因此,當 Beacon 設置為 Eddystone 時,NamespaceID 是第一個標識符,它應該定義的區域與 UUID 是 iBeacon 配置文件中的第一個標識符完全相同。 我理解正確嗎? 如果我在那種情況下是對的,我無法將 Eddystone NamespaceID 解析為區域標識符,也無法監控用戶是否輸入設置為使用 Eddystone 配置文件的信標。 如果我錯了,請糾正我,並告訴我如何定義 Eddystone 信標的區域。

謝謝!

您可以定義一個與 Eddystone-UID namespaceID 匹配的區域,如下所示:

Region region = new Region("my-beacon-region", Identifier.parse("0xf7826da6bc5b71e0893e"), null, null);

訣竅是在標識符前加上“0x”,以向庫表明標識符是一個多字節十六進制值。 為方便起見,從 UUID 或整數值解析標識符時不需要前綴,但多字節十六進制值需要一個前綴,否則將無法區分“0x1000”(4096 十進制)和“1000”(1000 十進制) )。

在此處查看有關使用Android Beacon 庫使用 Eddystone-UID 的更多詳細信息:

http://altbeacon.github.io/android-beacon-library/eddystone-how-to.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM