位置

您可以使用 Google 镜像 API 在时间轴项目中观察用户的位置,直接请求其最近一次的已知位置,以及订阅定期位置信息更新。您还可以通过为 镜像 API 提供坐标进行绘制,在时间轴卡片中提供预渲染的地图图像。

检索最新的已知位置

如需检索当前用户的最新已知位置,请向 REST 端点发送 GET 请求:

原始 HTTP

GET /mirror/v1/locations/ HTTP/1.1
Authorization: Bearer {auth token}

订阅位置更新

订阅时间轴更新类似,您可以通过订阅 locations 集合来订阅位置信息更新。

原始 HTTP

POST /mirror/v1/subscriptions HTTP/1.1
Authorization: Bearer {auth token}
Content-Type: application/json
Content-Length: {length}

{
  "collection": "locations",
  "userToken": "harold_penguin",
  "verifyToken": "random_hash_to_verify_referer",
  "callbackUrl": "https://example.com/notify/callback"
}

在时间轴卡片上渲染地图

Google 镜像 API 可以为您渲染地图,并叠加标记和直线来表示重要的地点和路径。使用 glass://map URI 请求地图。示例如下:

<img src="glass://map?w=width&h=height&marker=0;latitude,longitude&marker=1;latitude,longitude&polyline=;latitude,longitude,latitude,longitude"
  width="width"
  height="height"/>

以下是必需参数的说明:

  • w - 所返回地图图片的宽度(以像素为单位)
  • h - 返回地图图像的高度(以像素为单位)

只有以下列表中的一项是额外的必需项,但您可以指定所有项:

  • centerzoom - 要渲染的地图的中心(纬度、经度)和缩放级别。如需了解详情,请参阅缩放级别
  • marker - 指定要在指定坐标处绘制的图钉标记。 该标记参数接受标记类型(0 表示 pin1、当前位置)、纬度坐标和经度坐标。 如果您未明确指定 centerzoom,地图会自动以您创建的标记为中心进行缩放。
  • polyline - 指定多段线坐标以表示地图上的路径。 每条多段线都包含宽度和颜色,后跟多段线中的顶点。例如:polyline=8,ffff0000;47.6,-122.34,47.62,-122.40 会在 (47.6,-122.34) 和 (47.62,-122.40) 之间指定一条 8 像素宽的红线。如果您未明确指定 centerzoom,则地图会自动居中并缩放以适应多段线。

以下示例展示了一个如何显示带有一些文本的地图图片及其外观的最佳做法:

<article>
  <figure>
    <img src="glass://map?w=240&h=360&marker=0;42.369590,
      -71.107132&marker=1;42.36254,-71.08726&polyline=;42.36254,
      -71.08726,42.36297,-71.09364,42.36579,-71.09208,42.3697,
      -71.102,42.37105,-71.10104,42.37067,-71.1001,42.36561,
      -71.10406,42.36838,-71.10878,42.36968,-71.10703"
      height="360" width="240">
  </figure>
  <section>
    <div class="text-auto-size">
      <p class="yellow">12 minutes to home</p><p>Medium traffic on Broadway</p>
    </div>
  </section>
</article>

时间轴卡片上的预渲染地图