Google Play服务:使用Places API

这篇教程介绍了如何在Android应用中集成Google Places API,包括设置API密钥,使用Place Picker组件,获取用户当前位置,实现预测地点功能,以及通过ID搜索地点。开发者可以通过这个API为用户提供基于位置的定制体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2015年3月,Google发布了Android版Places API,作为Google Play服务的一部分。 该API使开发人员可以从Google访问大量信息,从而通过使用地点的名称和信息(而不是一组坐标)为用户提供针对其当前位置的量身定制的体验。

在本教程中,您将学习如何向用户展示Place Picker组件,如何使用Places API猜测用户的当前位置,通过其ID搜索位置,以及允许用户在文本字段中键入内容以显示它们具有预测结果。

1.设置

如果您还没有Android公共API密钥,则需要为Android应用程序创建公共Google API密钥。 您可以通过访问Google的开发人员控制台进行此操作Google的文档中提供了基于签名证书和程序包名称创建密钥的说明 ,这些说明不在本文的讨论范围之内。

创建密钥后,搜索Places API并将其设置为enabled。 在每24小时内可以发送多少请求的情况下,对Places API的某些调用受到限制。 在撰写本文时,不具有计费配置文件的帐户最多可以发送1,000个请求,而具有计费配置文件的帐户可以发送150,000个请求。 如果您需要更多,则可以提交请求以按照“ 使用限制”文档中的说明增加此限制。

准备使用API​​密钥后,就可以开始进行演示项目了。 在Android Studio中创建一个项目,并将支持的最低SDK版本设置为至少9。这是使用Google Play服务的最低要求。

Android Studio创建Hello World模板项目后,打开build.gradle文件,并在“ dependencies节点下,添加所需的Play Services 7.0依赖项。 这是撰写本文时的最新版本,但是您可以通过查看Google文档来验证最新版本。

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.0.0'
    compile 'com.google.android.gms:play-services:7.0.0'
}

接下来,打开AndroidManifest.xml ,为项目添加所需的权限,并声明应用程序需要OpenGL版本2。

<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<uses-feature
    android:glEsVersion="0x00020000"
    android:required="true"/>

您在清单中要做的最后一件事是添加两个<meta-data>标签,以在<application>标签内为该<application>设置gms版本和API密钥。

<meta-data
    android:name="com.google.android.geo.API_KEY"
    android:value="@string/google_api_key" />
<meta-data
    android:name="com.google.android.gms.version"
    android:value="@integer/google_play_services_version" />

完成清单后,就可以开始编写代码了。 由于这是Play Services的组件,因此您需要初始化GoogleApiClient并在Activity的生命周期内进行连接/断开连接。 我们在Activity类的onCreateonStartonStop方法中执行此操作。

@Override
protected v
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值