高德地图地址:http://code.autonavi.com

示例程序及SDK下载地址

如何获取AutoNavi MAP API密钥

AutoNavi提供的地图通过MapView对象进行显示。MapView对象显示的地图下载自AutoNavi地图服务。在您可以正常使用 AutoNavi地图数据之前,您必须进行注册登记,同意AutoNavi服务条款,并提供您的MD5指纹证书。对于每个已注册的MD5指纹证 书,AutoNavi地图服务将为您提供一个地图API密钥 -- 一个字母数字字符串,它唯一标识您和您的证书。您需要在MapView对象中存储API密钥。这样,当MapView对象请求地图数据时,服务器可以判定 您已注册,并为您提供地图数据。

对于获取API密钥的详细步骤,请参见如何获取一个API密钥

如果您的MapView中没有存储有效的API密钥,应用程序仍然可以编译并运行,但MapView将无法显示地图数据。因此,请在开发应用程序的一开始,就先注册一个API密钥。

API密钥的注册是免费的,几分钟即可完成。

什么是签名证书

在开发阶段,您可以通过SDK工具注册生成一个调试API密钥(Debug Key)。
在准备发布前,您需要使用签名证书重新生成API密钥。然后用这个API密钥替换应用中MapView的调试API密钥

注意:每次您更新应用中的签名证书时,请记得使用更新的证书重新生成API密钥

如何获取一个API密钥

  • 概览
  • 在项目中导入AutoNavi Map API开发包
  • 获取签名证书的MD5指纹
  • 获取调试证书的MD5指纹
  • 在AutoNavi地图服务注册证书指纹
  • 在应用中添加地图API密钥
  • 概览

AutoNavi地图通过MapView对象进行显示。MapView对象显示的地图下载自AutoNavi地图服务。在您可以正常使用 AutoNavi地图数据之前,您必须进行注册登记,同意AutoNavi服务条款,并提供您的MD5指纹证书。对于每个已注册的MD5指纹证 书,AutoNavi地图服务将为您提供一个地图API密钥 -- 一个字母数字字符串,它唯一标识您和您的证书。您需要在MapView对象中存储API密钥。这样,当MapView对象请求地图数据时,服务器可以判定 您已注册,并为您提供地图数据。

获取的地图API密钥有两种:
一种是调试API密钥(Debug Key),供开发应用程序时调试使用,使用调试证书的MD5指纹生成。
另一种是发布API密钥(Release Key),在应用程序正式发布时使用,使用签名证书的MD5指纹生成

对于多个应用程序,可以申请多个API密钥,每个MapView中引用的API密钥要与该应用程序的签名证书一致。

总之,在MapView中引用API密钥需要注意如下要点:

1.要正确显示MapView地图数据,需要注册生成一个API密钥
2.每个地图API密钥唯一的与一个MD5指纹证书相关联
3.每个MapView必须引用一个API密钥,并且这个密钥要由该应用程序的发布签名证书生成
4.一个API密钥可应用在该应用程序的所有MapView对象中
5.可以根据您的开发人员情况注册多个证书
6.可以在开发阶段使用调试证书的MD5指纹生成调试API密钥,在正式发布时使用签名证书的MD5指纹生成发布API密钥

  • 在项目中导入AutoNavi Map API开发包

在使用AutoNavi Map API进行基于AutoNavi地图数据的开发时,首先需要在建立的工程中导入AutoNavi Map API开发包。如:在Eclipse开发环境,选择Add External Jar,进行开发包导入

  • 获取签名证书的MD5指纹

要注册一个地图API密钥,需要您提供应用程序签名证书的MD5指纹。在进行注册前,请先使用keytool生成MD5指纹。
首先,需要确定在发布时使用哪些签名证书,并确保这些签名证书包含在keystore的路径中
接下来,运行keytool,使用-list, -alias, -keystore选项。下表列出了对应选项及说明

 

Keytool 工具参数

参数说明

 

-list

该参数列出一个证书的MD5指纹

 

-keystore <keystore-name>.keystore

该参数指定目标keystore文件的名称

 

-storepass <password>

该参数作为Keystore文件的密码

为保障信息安全性,请您仅在确认的安全计算机环境下使用此参数。不包含此参数,Keytool工具会提示您输入密码。上述措施可防止密码信息被记录到操作历史中带来的泄密风险。

 

-alias <alias_name>

Key的别名

 

-keypass <password>

该参数作为KEY的密码
为保障信息安全性,请您仅在确认的安全计算机环境下使用此参数。不包含此参数,Keytool工具会提示您输入密码。上述措施可防止密码信息被记录到操作历史中带来的泄密风险。

以下示例说明如何使用keytool在指定keystore和别名的条件下生成MD5指纹:
$keytool -list, -alias alias_name, -keystore my-release-key.keystore

keytool会提示您输入对应密码。输入正确后,keytool会输出显示MD5指纹.例如:
证书指纹 (MD5): 94:1E:43:49:87:73:BB:E6:A6:88:D7:20:F1:8E:B5:98

最后,得到MD5指纹后,就可以到AutoNavi地图服务进行API密钥注册生成了。

  • 获取调试证书的MD5指纹

在开发调试阶段,可以通过SDK工具生成调试API密钥(Debug Key)。在开发结束正式发布前,再获取正式的发布API密钥(Release Key)。

要生成调试API密钥,首先需要获得调试证书MD5指纹。默认情况下,构建工具(Build Tools)会在当前AVD目录中创建调试keystore。不同的平台,AVD目录的位置也不相同:

Windows Vista: C:\Users\<user>\.android\debug.keystore
Windows XP: C:\Documents and Settings\<user>\.android\debug.keystore
OS X and Linux: ~/.android/debug.keystore

如果您使用Elicpse/ADT,当您不太确定具体位置时,可以通过选择 Windows > Prefs > Android > Build来得到完整的路径。然后通过拷贝粘贴的方式找到指定位置。

一旦知道keystore的位置,就可以通过keytool获得调试MD5指纹:
$keytool -list -alias androiddebugkey -keystore <path_to_debug_keystore>.keystore -storepass android -keypass android

  • 在AutoNavi地图服务注册证书指纹

在获取MD5指纹后,访问如下页面注册证书指纹:
http://code.autonavi.com/key

具体的注册步骤如下:

1.如果没有在AutoNanvi地图服务进行过注册,请先进行注册并登录
2.仔细阅读AutoNavi Map API服务条款,并同意该服务条款
3.粘贴MD5指纹到指定的输入框
4.点选"获取 KEY"按钮

服务器端接受您的请求,根据您提供的MD5指纹生成一个唯一的API密钥,并在新页面中显示生成的结果。拷贝并粘贴API密钥到应用的MapView中。

注意:如果您忘记了自己的API密钥,可以通过选择”我的API申请”找回。

  • 在应用中添加地图API密钥

获得地图API密钥后,需要将API密钥添加到应用程序的MapView对象中,这样地图服务器才会允许地图数据的下载。

对于通过XML布局文件生成的MapView对象,需要添加对API密钥属性的声明 -- android:apiKey。举例如下:
<com.autonavi.mapapi.MapView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:enabled="true"
android:clickable="true"
android:apiKey="example_Maps_ApiKey_String"
/>

对于通过代码生成的MapView对象,需要在构造函数中,传入API密钥值。举例如下:
mMapView = new MapView(this, "example_Maps_ApiKey_String");

更多关于MapView的信息,请参见MapView的接口说明文档。

如何在Mapview 布局( LayOut ) 文件中添加userAgent属性

  • 什么是userAgent: userAgent属性主要用于Map与手机的适配。如有的设备需要高分辨率或小字体的地图。
  • l 何时使用userAgent: 对大多数设备而言,API的使用者不需设置此属性。这时系统缺省的userAgent为android。Autonavi 会根据不同的设备,及时更新所支持的userAgent。请访问Autonavi开发网站(http://code.autonavi.com/ ),得到更多信息。
  • 如何设置userAgent: 应用程序需要在资源文件的values目录下添加attrs.xml, 并加入如下行:

<?xml version="1.0" encoding="utf-8" ?>

<resources>

<declare-styleable name=" attr-name-you-choose">

  <attr name="userAgent" format="string" />

  </declare-styleable>

</resources>

上述, <declare-styleable name=" attr-name-you-choose ">中的name值可任选。
而 <attr name="userAgent" format="string" /> 中的name值必须为userAgent。

  • 最后,需要在Mapview的布局( LayOut )文件中添加此属性:

<com.autonavi.mapapi.MapView android:id="@+id/atmapsView" android:layout_width="fill_parent"

android:layout_height="fill_parent" android:clickable="true"

android:apiKey="9B44AFD9CA974AA0AD806B343356084E455574DCF56DFD39709C29535EE1089A07AC124066507C89"

attr-name-you-choose:userAgent="android"

/>

  • 对于像素值低于10万以下的低分辨率手机,userAgent属性应设置为:attr-name-you-choose:userAgent="androidL"
来自: http://hi.baidu.com/sjzzhangxun/blog/item/dc01ab07e58d3c85d53f7cb2.html

Android 手机地图开发-高德地图问题相关推荐

  1. android高德地图自定义地图,(android地图开发) 高德地图自定义对话框

    截图效果: 布局文件: android:layout_width="fill_parent" android:layout_height="fill_parent&quo ...

  2. java 地图控件_控件交互-与地图交互-开发指南-Android 地图SDK | 高德地图API

    控件是指浮在地图图面上的一系列用于操作地图的组件,例如缩放按钮.指南针.定位按钮.比例尺等. UiSettings 类用于操控这些控件,以定制自己想要的视图效果.UiSettings 类对象的实例化需 ...

  3. 高德离线地图开发 java_自定义地图-创建地图-开发指南-Android 地图SDK | 高德地图API...

    简介 自 Android 3D 地图 SDK v5.2.0起,高德地图支持使用可视化自定义地图模版改变底图颜色和样式,实现可视化的编辑和控制显示地图元素. 创建样式文件 创建地图样式 高德地图开放平台 ...

  4. 手机php打开自带地图,android在自带的app中,调用手机自带的百度地图和高德地图去实现导航的功能...

    1.此方法不需要集成百度的sdk 高德的sdk  节省了内存 2.只需要几行代码就能实现调用百度地图或者高德地图的sdk实现导航的功能 3.代码如下 private View.OnClickListe ...

  5. android在自带的app中,调用手机自带的百度地图和高德地图去实现导航的功能

    2019独角兽企业重金招聘Python工程师标准>>> 1.此方法不需要集成百度的sdk 高德的sdk  节省了内存 2.只需要几行代码就能实现调用百度地图或者高德地图的sdk实现导 ...

  6. Android百度地图、高德地图、腾讯地图导航路线规划问题

      Android百度地图.高德地图.腾讯地图导航路线规划 在最近的项目中,需求是用户选择某个地址需要进行导航时,弹出百度地图.高德地图和腾讯地图让用户选择.如果该用户手机中已安装对应的地图App,则 ...

  7. Android app调用第三方地图(百度地图,高德地图,谷歌地图)导航

    因为公司项目需要用到外部导航,找到一些,大兄弟们凑合看...好吧反正也没人看- - 1.调用百度导航 //开启百度导航public void startNavi() {//百度地图,从起点是LatLn ...

  8. Android调用跳转百度地图、高德地图、腾讯地图进行目的地导航

    Android App跳转百度地图.高德地图.腾讯地图进行目的地导航. 先放上百度.高德.腾讯地图调起API文档地址,有些参数不懂可以参考. 百度地图:http://lbsyun.baidu.com/ ...

  9. AndroidStudio开发高德地图有些机型报java.lang.UnsatisfiedLinkError解决方案

    此解决方案不能解决问题.同时有同胞已解决希望解答一下 最近开发高德地图 在三星n7102机型运行报以下错. E/AndroidRuntime: FATAL EXCEPTION: mainjava.la ...

最新文章

  1. Java 中的四种引用
  2. php判断数组下标,php判断json或者数组格式与给定格式是否一致
  3. XCode的控制台调试命令
  4. std::dynamic_pointer_cast细节用法
  5. 怎么删除用户_小米手机如何恢复最近删除的便签 - 学显
  6. 【收藏】机器学习与深度学习核心知识点总结
  7. Python下的数据处理和机器学习,对数据在线及本地获取、解析、预处理和训练、预测、交叉验证、可视化
  8. 张量分析初步和矢量恒等式
  9. C#对STK11.4二次开发的Hello World
  10. 阿里云云计算ACP认证模拟试题一(上)
  11. 千兆路由器怎么设置网速最快_千兆路由器体验:速度简直太快了
  12. 如何判断电脑电源故障
  13. yii2授权之ACF
  14. 如何有效地阅读文献并做笔记
  15. 从12306看海量并发网站架构
  16. 时速云发布微服务产品 TMF V5.6.0 全新版本,支持独立部署,简化企业微服务架构
  17. 3dmax学习5——倒角剖面命令
  18. vector初始化必须设置大小么_如何将西门子S120变频器设置成为可调电压源
  19. 字符串与空格的恩怨情仇
  20. C语言常用表格--表在手,跟我走!

热门文章

  1. trying to overwrite ‘/usr/lib/python3.9/typing.py‘, which is also in package libpython3.9-stdlib:amd
  2. Python 背后的发展,让我越想越后怕...
  3. 5.0QQ空间全套模块装扮:爱心情侣套装
  4. 腾讯试水游戏手机,雷蛇、黑鲨、ROG 争抢合作机会;《复联4》国内预售排片率达99.7%;华为P30国行售价3988元起|嘟头条...
  5. win7计算机的用户名和密码,win7系统电脑,如何设置共享,共享计算机的用户名和密码...
  6. 论文阅读_图像生成文本_CLIP
  7. 4款实力超群的黑科技软件,每一款都是不二之选
  8. Unity的WebGL UGUI字体模糊问题
  9. IPFS/Filecion现在参与还是红利期吗?哪些上市公司参与了IPFS?FIL币价未来两年能破2000U吗?
  10. 一文了解类加载机制--ClassLoader