Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 无硬码检测信标_Android_Ios_Server_Ibeacon_Hardcode - Fatal编程技术网

Android 无硬码检测信标

Android 无硬码检测信标,android,ios,server,ibeacon,hardcode,Android,Ios,Server,Ibeacon,Hardcode,我想知道: 例如,当我们使用app shop进入商店时,我们会收到通知 但是如果信标关闭了,它被另一个信标替换,使用不同的UUID等等,该怎么办?信标的UUID/Major/Minor值是否未进行harcoded,而是在服务器上的数据库中?怎么取的 谢谢iBeacon的UUID与其MAC地址没有任何关系。该值由信标所有者分配给信标。一些信标供应商具有特定的UUID或UUID范围,而其他供应商则允许使用任何UUID 如果某个特定的信标出现故障,则可能会使用相同的UUID配置替换 当应用程序检测到一

我想知道:

例如,当我们使用app shop进入商店时,我们会收到通知

但是如果信标关闭了,它被另一个信标替换,使用不同的UUID等等,该怎么办?信标的UUID/Major/Minor值是否未进行harcoded,而是在服务器上的数据库中?怎么取的


谢谢

iBeacon的UUID与其MAC地址没有任何关系。该值由信标所有者分配给信标。一些信标供应商具有特定的UUID或UUID范围,而其他供应商则允许使用任何UUID

如果某个特定的信标出现故障,则可能会使用相同的UUID配置替换


当应用程序检测到一个特定的信标时,它需要引用某个数据库,无论是在应用程序中还是在服务器上,该数据库给出了“含义”对于特定的UUID/主要/次要组合,因此数据库可能会更新以反映新硬件,但这比简单地配置具有相同值的替换硬件的可能性要小

最好不要在应用程序中硬编码信标标识符。您可以构建应用程序,以便在启动时,它会联系web服务下载要搜索的标识符列表。你可以建立你自己的或使用现成的服务,就像我的公司,这正是做到这一点

当然,如果您依靠信标检测来启动应用程序,那么如果信标ID提前更改,您的应用程序将不会自动启动以下载新的信标标识符。用户必须手动启动才能获得新列表

有几种方法可以解决这个问题:

  • 在替换的信标上设置标识符,使其与旧信标相同
  • 如果您知道无法设置标识符,请拓宽自动启动的信标区域过滤器,使其与多种信标标识符匹配。在iOS上,您可以搜索具有共享UUID的所有信标。在Android上,您可以搜索所有信标,而不考虑标识符
    当您初始化信标区域时,您需要至少识别UUID,它或者在应用程序中用硬编码,或者可以放置在服务器上,并且应该在调用初始化信标区域之前从服务器检索

    注意:您应该有一份所有信标UUID、主信标和副信标的副本,以备将来使用

    但是假设你的灯塔坏了,那就有备用计划了

    按照以下步骤进行操作:

    1.安装Estimote iOS或android应用程序 2.将新信标放在设备附近,并在estimote应用程序中开始测距信标。 3.然后你需要在你的应用程序中使用你的云帐户登录并配置新的信标(即编辑信标的UUID)。你甚至可以编辑主要、次要等 4.保存这些设置,即可配置新的信标并准备使用


    快乐编码:)

    是的,但我的意思是,要检测信标,必须有uuid,所以它要么是条形码,要么是从数据库获取的?