### 获取当前位置
要查找本地商家或设备的最后已知所在地点,请调用 `PlaceDetectionApi.getCurrentPlace()`。
您可以选择指定一个 `PlaceFilter`,以将结果限制为一个或多个地点 ID(最多 10 个),或者仅选择当前打开的地点。如果未指定筛选器,则不会筛选结果。
API 会在 `PendingResult` 中返回 `PlaceLikelihoodBuffer`。`PlaceLikelihoodBuffer` 包含表示类似地点的 `PlaceLikelihood` 对象列表。对于每个地点,结果中都包含指示地点是正确地点的可能性信息。如果没有与筛选条件对应的已知地点,缓冲区可能为空。
您可以调用 `PlaceLikelihood.getPlace()` 来检索 `Place` 对象,调用`PlaceLikelihood.getLikelihood()` 来获取地点的可能性评分。值越高,表示该地点是最佳匹配项的可能性越大。
### 地点自动完成
要获取预测地点名称和/或地址的列表,请调用 `GeoDataApi.getAutocompletePredictions()`,传递以下参数:
* 必填:`query` 字符串包含用户键入的文本。
* 必填:`LatLngBounds` 对象,将结果限制为通过纬度和经度边界指定的特定区域。
* 可选:`AutocompleteFilter`,包含一组地点类型,您可以使用它们将结果限制为一种或多种地点类型,如商店、学校、邮局等。有关可用地点类型的列表,请参见[支持的类型](https://developers.google.com/places/supported_types#table3)列表。
API 会在 `PendingResult` 中返回`AutocompletePredictionBuffer`。`AutocompletePredictionBuffer` 包含表示预测地点的`AutocompletePrediction` 对象列表。如果没有与查询和筛选条件对应的已知地点,缓冲区可能为空。
对于每个预测地点,都可以调用以下方法来检索地点详情:
* `getDescription()` – 返回地点说明。
* `getMatchedSubstrings()` – 通过与此地点匹配的 query 返回子字符串列表。例如,您可以使用这些子字符串突出显示用户查询中的匹配文本。
* `getDescription()` – 返回预测地点的地点 ID。地点 ID 是唯一标识地点的文本标识符。有关地点 ID 的详细信息,请参阅[地点 ID 概览](https://developers.google.com/places/place-id)。
* `getPlaceTypes() – 返回与此地点关联的地点类型列表。