全部服务产品
开发者频道
定价
登录
注册和获取密钥
下载开发文档
使用Android定位SDK为什么需要申请AK?

定位SDK自V4.0版本之后,引入了百度地图开放平台的统一AK验证体系。

通过AK验证机制,开发者可以更方便、更安全地配置自身使用的百度地图资源(如服务配额等)。

随着百度地图开放平台的发展,未来您还可以通过AK获得更多服务(如提升服务次数、定制化服务等)。

注意:
1. 当您选择使用V4.0及之后版本的定位SDK时,需要先申请且配置AK,并在程序相应位置填写您的AK;(选择使用V3.3及之前版本SDK的开发者,不需要使用AK)
2. 每个AK仅且唯一对于1个应用验证有效,即对该AK配置环节中使用的包名匹配的应用有效。因此,多个应用(包括多个包名)需申请多个AK,或者对1个AK进行多次配置;
3. 若您需要在同一个工程中同时使用Android定位SDK和Android地图SDK,可以使用同一个AK。
获取AK的流程

请在控制台-我的应用申请SDK开发密钥

申请步骤大致可分为如下四个步骤:

1. 若您未登录百度账号,请登录您的百度账号,如下图:

(若您没有百度账号,点击右下角根据提示注册并登录)

2. 登录后将进入官网控制台,如下图:
3. 点击【我的应用】、【创建应用】开始申请开发密钥,如下图:
4. 填写应用名称,注意应用类型选择“Android SDK”、正确填写SHA1 和 程序包名(SHA1和包名的获取方法见下文)。如下图:

提示:“启动服务”中的各项服务须勾选后才能正常使用,取消勾选会导致AK没有使用对应服务的权限,若您没有特殊要求,建议保持默认勾选。例如,如果您在申请时没有勾选“国内天气查询”,则申请到的AK访问过那天起查询时会返回无权限。

申请AK时没有选择某项服务,我该如何重新勾选

请点击控制台-应用管理-我的应用,找到对应AK点击设置,重新勾选所需服务

5. 完成以上内容之后点击提交会为您生成该应用的AK,到这您就可以使用AK来开始开发工作了。

注意:同一个AK中,可以填写开发版SHA1和发布版SHA1,这样app开发、测试到发布整个过程中均不需要改动AK。
此功能完全兼容以前的AK,默认将原有的SHA1放在发布版SHA1上,开发者也可自己更新,将原有的开发版本的AK和发布版本的AK对应的SHA1值合并后使用。

获取包名

根据您使用的开发工具,包名的获取方式有所不同。

使用 Android Studio 开发

在app目录下的build.gradle文件中找到applicationId,并确保其值与AndroidManifest.xml中定义的package相同。

注意:使用Android Studio开发,如遇到applicationId 与package不一致的情况,以appclicationid为准。查看Android官方说明链接

使用Eclipse开发

包名是Android应用程序本身在AndroidManifest.xml 中定义的名称,例如:

获取SHA1

调试版本(debug)和发布版本(release)下的 SHA1 值是不同的,发布 apk 时需要根据发布 apk 对应的 keystore 重新配置 Key。(注意:我们这里使用的是调试版本,在开发时请使用调试版本) 。

Android Studio场景使用keytool

1. 进入控制台(以Mac为例,Windows则进入cmd控制台,同样执行下述命令),执行”cd .android”定位到”.android”文件夹下。
2. 继续在控制台输入命令:

调试版本使用指令:keytool -list -v -keystore debug.keystore
发布版本请使用指令:keytool -list -v -keystore apk 的 keystore

3. 输入口令:

调试版本默认密码是: android,发布模式的密码是apk的keystore设置的密码。输入密钥后回车(如果没设置密码,可直接回车),此时可在控制台显示的信息中获取SHA1值,如下图所示:

Eclipse场景在adt中查看

打开Eclipse,Preferrences -> Android -> Build,如图:

上一篇

相关术语

下一篇

Eclipse配置

本篇文章对您是否有帮助?