一切就绪!

着手开发前,请先阅读我们的开发者文档

激活 Google Places API for Android

为帮助您起步,我们将引导您在 Google 开发者控制台中先完成几项任务:

  1. 创建或选择项目
  2. 激活 Google Places API for Android
  3. 创建相应密钥
继续

入门指南

本指南介绍了 Google Places API for Android 中的功能,并且向您说明了如何配置您的应用以使用 API。

  1. 简介和概念
  2. API 概览
  3. Android 平台的受支持版本
  4. 配置您的应用
    1. 设置 Google Play 服务
    2. 添加您的 API 密钥
    3. 请求提高使用限制
  5. 连接至 Places API

简介和概念

Google Places API for Android 的主要入口点有 PlacePicker UI 小部件、Autocomplete UI 小部件、GeoDataApiPlaceDetectionApi

通过使用 Google Places API for Android,您可以构建根据情境响应设备附近的当地商家及其他地点的位置感知应用。这意味着您可以根据对用户有意义的地点构建丰富的应用,从而补充 Android 位置服务所提供的基于地理的简单服务。

地点定义为具有名称的物理空间。地点的另一种解释是可以在地图上找到的任何位置。地点的示例包括本地商家、景点和地理位置。在 API 中,地点通过 Place 界面表示。它包括地点的名称及其地址、地理位置、地点 ID、电话号码、地点类型、网站 URL 等信息。

API 概览

帮助您的客户探索其位置及其周边环境:

  • 通过使用内置的地点选取器 UI 小工具,用户可以在交互式地图上选择相应的地点
  • 获取当前地点,即设备的最后已知所在地点。API 会返回类似地点列表,并指示每个地点的相对可能性
  • 简化地点名称和地址的输入 - 在用户键入查询时自动完成。使用自动填充 UI 小部件,或调用地点预测 API。
  • 检索并显示关于地点的丰富信息
  • 访问高质量地点照片

通过提供最新的本地信息,让您的应用脱颖而出:

  • 向 Google Places 数据库添加地点,以便可立即从您自己的应用内进行检索,以及在审核后对其他应用可见
  • 报告地点,指示设备目前位于特定地点
  • 为一个或多个地点存储唯一的地点 ID,然后根据需要使用该 ID 检索地点信息

API 的其他重要内容包括:

  • 利用 WiFi 扫描功能以低能耗准确检测地点
  • 设备缓存:Google Places API for Android 的大多数请求可能都包含从 Google 服务器来回的操作,但您也可以将数据本地缓存 30 天。

Android 平台的受支持版本

Google Places API for Android 可用于 Google Play 服务支持的所有 Android 版本。请参见关于支持不同平台版本的 Android 指南。

配置您的应用

使用 Google Places API for Android 的所有应用均需执行以下配置步骤。

设置 Google Play 服务

要访问 Google Places API for Android,应用的开发项目必须包含 Google Play 服务。通过 SDK 管理器下载并安装 Google Play 服务组件,然后将内容库添加至您的项目。有关详情,请参见关于设置 Google Play 服务的 Android 指南。

添加您的 API 密钥

如果您尚未获取 API 密钥和启用 Google Places API for Android,请立即按照注册指南中的说明来获取一个密钥。

请按照以下代码示例所示,将您的 API 密钥添加至应用清单文件,并将 YOUR_API_KEY 替换为您自己的 API 密钥:

<application>
  ...
  <meta-data
      android:name="com.google.android.geo.API_KEY"
      android:value="YOUR_API_KEY"/>
</application>

请求提高使用限制

所有应用都可以免费且不受限制地使用 Google Places API for Android。不过,为了确保所有应用均可公平使用查询,某些方法具有分级查询限制。

Google Places API for Android 设定的默认限制为每 24 小时 1,000 次请求。如果您的应用超过该限值,将会开始出现故障。

当应用达到 每 24 小时 150,000 次请求时,还会再进一步检查。如果您的应用超过该限值,将会再次开始出现故障。

如果您预期请求次数会超过默认的允许请求次数,请提前采取措施增大限值。请参阅使用限制指南。

连接至 Places API

以下界面提供了 Google Places API for Android 的主要入口点:

  • GeoDataApi,可访问包含本地地点和商家信息的 Google 数据库。
  • PlaceDetectionApi,可快速访问设备的当前地点,并且让用户有机会报告位于特定地点的设备的位置。

要连接至 API,您需要创建一个 Google Play Services API 客户端实例。在片段或 Activity 的 onCreate() 方法中,使用 GoogleApiClient.Builder 创建一个 Google API 客户端实例。使用生成器添加所需的 API,如以下代码示例所示:

import com.google.android.gms.common.api.GoogleApiClient;
import com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener;
import android.support.v4.app.FragmentActivity;

public class MyActivity extends FragmentActivity 
        implements OnConnectionFailedListener {
    private GoogleApiClient mGoogleApiClient;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        mGoogleApiClient = new GoogleApiClient
                .Builder(this)
                .addApi(Places.GEO_DATA_API)
                .addApi(Places.PLACE_DETECTION_API)
                .enableAutoManage(this, this)
                .build();
    }

    // TODO: Please implement GoogleApiClient.OnConnectionFailedListener to
    // handle connection failures.
}

如代码示例所示,Places 类提供可传递到 GoogleApiClient.Builder 以启用 GeoDataApiPlaceDetectionApi 的令牌。

有关使用客户端的详细信息,请参见关于访问 Google API 的 Android 指南。特别是,请参见关于开始连接连接失败处理的指南,了解关于 addConnectionCallbacks()addOnConnectionFailedListener() 的更多信息。

发送以下问题的反馈:

此网页
location_on
Google Places API for Android