谷歌服务器的用途是什么?

What purpose does googles server serve?

所以我正在查看规格和文档,看起来一切都完全符合我的预期,但信标 API 似乎需要在 googles 服务器上注册。我不太明白谷歌服务器的用途是什么?

我希望能够使用数据片段抛出一些信标,或者甚至只是一个我可以用来绑定其他东西的唯一标识符,并订阅接近警报。

我猜它与过滤信标有关,你不想与之有任何关系,但如果我有一个明确的应用程序监听它识别的信标,谷歌服务器就不需要在我的基础设施中占有一席之地了

您不需要 Google 服务器来过滤特定的 Eddystone 信标。开源 Android Beacon Library 允许您在没有任何后端服务器的情况下使用 Region 过滤器来做到这一点,过滤器可以查找具有特定 Eddystone 命名空间 ID(以及可选的实例 ID)的信标,如下所示:

// Configure to search for only a single Eddystone
// with a specific namespace Id and instance Id
// You can leave the instance Id null to find all 
// beacons with a given namespace Id.
Identifier myBeaconNamespaceId = Identifier.parse("0x2f234454f4911ba9ffa6");
Identifier myBeaconInstanceId = Identifier.parse("0x000000000001");
Region region = new Region("my-beacon-region", myBeaconNamespaceId, myBeaconInstanceId, null);
mBeaconManager.setMonitorNotifier(this);
try {
   mBeaconManager.startMonitoringBeaconsInRegion(region);
} catch (RemoteException e) {
   e.printStackTrace();
}

你可以看到一个完整的例子here.

虽然您不需要 Google 服务器平台来过滤信标,但您可以使用它来:

  1. 将元数据与您的信标联系起来,检测到它们的应用程序可以访问这些元数据。这些可能是您自己的应用程序,也可能是其他人拥有的可以访问您的信标的应用程序。

  2. 与 Nearby 或 Google Now 等其他 Google 服务集成。

许多开始使用信标的公司将不得不编写一些关键软件:

  1. table 或某处的数据库将信标映射到某个位置,可能还有一些其他元数据(巴士站 123,或商店 #58133 的现金柜台)

  2. 某种 API 允许应用程序在看到信标时获取该元数据 — 应用程序刚刚看到信标 238925823,现在它知道它非常靠近 123 号巴士站.

  3. 能够查看我的信标是否有电池没电等也很好

Proximity Beacon API 基本上就是为了解决这类问题。没有必要使用它,但它是为那些不想自己实现所有这些的人准备的。作为奖励,如上文 @davidgyoung 所述,您还可以与其他 Google 服务集成。