iOS 埃迪斯通信标问题 - 找不到命名空间 ID



我正在尝试构建一个埃迪斯通信标扫描仪。我已经安装了Eddystone框架,这很好。但是我不知道我的信标有哪个命名空间。

我从商店中安装了一个名为" EbeAcon"的应用程序,在那里我成功地扫描了我的信标。他们给我ID:051674047A2B7D9D0A6F96BAEE9DBC3B

    // filter by namespace
    let namespaceUID = ESTEddystoneUID(namespaceID: "051674047A2B7D9D0A6F")
    let namespaceFilter = ESTEddystoneFilterUID(namespaceID: "051674047A2B7D9D0A6F")
    self.eddystoneManager.startEddystoneDiscovery(with: namespaceFilter)
    // filter by namespace and instance
    let namespaceInstanceUID = ESTEddystoneUID(namespaceID: "051674047A2B7D9D0A6F",
                                               instanceID: "96BAEE9DBC3B")
    let namespaceInstanceFilter = ESTEddystoneFilterUID(namespaceID: "051674047A2B7D9D0A6F96BAEE9DBC3B")
    self.eddystoneManager.startEddystoneDiscovery(with: namespaceInstanceFilter)
    // filter by URL
    let urlFilter = ESTEddystoneFilterURL(url: "http://www.wellcoressd.com")
    self.eddystoneManager.startEddystoneDiscovery(with: urlFilter)
    // filter by domain name
    let domainNameFilter = ESTEddystoneFilterURLDomain(urlDomain: "my.restaurant.com")
    self.eddystoneManager.startEddystoneDiscovery(with: domainNameFilter)
    func eddystoneManager(manager: ESTEddystoneManager, didDiscover eddystones: [ESTEddystone], with eddystoneFilter: ESTEddystoneFilter?) {
        print("yes")
        // ...
    }

eddystone-uid名称空间ID应为10个字节,实例ID 6字节。

您在问题中显示的值051674047A2B7D9D0A6F96BAEE9DBC3B是16个字节,所以我怀疑这是两个标识符的组合。如果这是正确的:

namespace id: 051674047A2B7D9D0A6F
instance id: 96BAEE9DBC3B

您可以尝试使用我的免费定位应用程序,该应用程序将扫描Eddystone UID信标,并分别向您展示名称空间和实例标识符。

https://itunes.apple.com/us/app/locate-beacon/id738709014?mt=8

最新更新