gpt4 book ai didi

android - AltBeacon:安卓信标库。如何为 Eddystone 定义区域?

转载 作者:行者123 更新时间:2023-11-29 01:22:20 25 4
gpt4 key购买 nike

我正在开发一个提供后台 Beacon 监控的应用程序。当用户从定义的区域进入信标时,我想开始测距。不幸的是,我无法为 Eddystone 配置文件定义区域。当我使用 Eddystone NamespaceID 创建区域对象时,标识符抛出解析异常...

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

根据文档 (https://altbeacon.github.io/android-beacon-library/javadoc/org/altbeacon/beacon/Identifier.html),当标识符采用 UUID 格式或整数时,解析工作正常。因此,当 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) ).

查看有关使用 Eddystone-UID 和 Android Beacon Library 的更多详细信息这里:

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

关于android - AltBeacon:安卓信标库。如何为 Eddystone 定义区域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36062988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com