datafield在AltBeacon中只持有一个长值



我试图在信标的数据字段中发送两个长值(纬度和经度),作为长列表,但只有第一个长值通过。

我试图把两个值,纬度和经度,在数据字段:.setDataFields(listOf(latitude.toLong(), longitude.toLong()))结果是[53],也就是纬度。

我试图把纬度放在dataffields和经度在引渡字段:.setDataFields(listOf(latitude.toLong())) .setExtraDataFields(listOf(longitude.toLong()))并且纬度被正确设置,而引渡字段仍然为空。

是否有关于数据字段的约束,例如只能保存一个值,尽管是一个长列表?

不同的信标格式支持不同的数据字段数和大小。

  • iBeacon - 0数据字段
  • AltBeacon - 1字节数据字段
  • Eddystone UID - 0数据字段
  • Eddystone TLM -大小分别为1、1、1、4和4字节的5个数据字段

您还可以定义适合数据包的任意数量的数据字段的自定义格式。

如果您使用setdataffields方法向信标中输入的数据字节数超过了格式允许的范围,则多余的数据将被忽略,并且不会包含在广告中。

编码纬度和经度的一种常见替代方法是在iBeacon和AltBeacon的主要和次要标识符字段(ID2和ID3)中进行编码。

相关内容

最新更新