高德android_api_开发指南

高德地图
什么是高德地图Android API?
宫崎滔天高德地图Android API 版是一套基于Android 1.6 及以上设备的应用程序接口,通过该接口,用户可以轻松访问高德地图服务和数据,构建功能丰富、交互性强的地图应用程序。高德地图Android API 不仅包含构建地图的基本接口,还提供了诸如矢量地图、栅格地图、地图定位(GPS、、WiFi)、本地搜索、路线规划等数据服务,用户可以根据自己的需要进行选择。
面向的读者
本API 是提供给具有一定Android 编程经验和了解面向对象概念的读者使用的。此外,读者还应该对地图产品有一定的了解。
兼容性
系统:支持Android 1.6 及以上系统。
高德Android MAP API 与Google Android Map API 比较
首先,高德Android MAP API 与Google Android Map API是基本兼容的,只需替换Java包名和Map API Key,即可将Google Android Map API替换为高德Android MAP API。
在此基础之上,高德Android MAP API同时还提供了一些个性化的功能和服务, 见下文介绍:
1. 坐标偏转:根据中国相关法律规律,GPS坐标首先需要经过偏转,否则此位置点将不能与电子地图匹配。高德Android MAP API支持了坐标偏转功能,并且在类MyLocation中内置了此功能,因此位置点显示相比较为准确。
2. 本地缓存:位置相关应用的特点是用户的地图访问有一定的局部性。因此,高德Android MAP API增加了本地缓存功能,此功能有助于提高速度,且减少最终用户资费。
3. Cell ID定位(手机定位):根据手机的当前连接,确定位置。此功能使用Android Location Manager机制,可以与现有的定位机制无缝集成。当GPS无信号时,可实现使用Cell ID 定位。
笔式绘图机
4. Geocodeing & Reverse Geocoding(地理编码与逆地理编码):在国外,位置信息地址描述相对比较精确,例如:XX市XX街道XX号。但在中国,由于一些生活习惯的特点和差异,用户一般不会
Socialist culture in China set up the overall national security concept, respect the sovereignty of netw
orks, build global Internet governance system adhere to the correct view, building human fates. (6) to grasp the full strictness requirement, and strict adherence to the party's political discipline and rules, loyal, clean, play, strengthen the wind against corruption, adhere to the "Tigers" and "fly". (7) the
青岛张韶军准确描述位置信息地址,而是选择通过以下描述来定位位置:XX路口。具体场景如: “我在XX路口
等你“ 或”我们在XX大厦旁边见面“。根据此特点,我们进行了本地化设计,因此高德地理编码与逆地理编码API满足了此类需求。
5. Poi搜索: 通过高德Poi搜索API,简单的几条语句,即可进行POI搜索,并且将结果标注在地图上。这大大简化了程序开发人员的工作。另一方面,高德的地理搜索引擎支持语义级别的POI搜索。具体场景: 假设有一个应用想在当前地图上标注所有饭馆,如果使用通用的搜索,如何设置搜索关键字呢?“饭馆”,“饭馆+餐厅”,“吃饭”?似乎没有非常合理的方案。而高德的地理搜索引擎除传统的全文搜索外,同时提供类别搜索。开发人员可自行组合高德POI类别,实现在高德MAP API 的基础上创造出自有应用程序更强大的应用。
在高德中未支持的Google Map API
类名方法注释
void computeScroll()不支持
boolean isSatellite()不支持卫星图
boolean isStreetView()不支持街景图
boolean isTraffic()不支持交通图
android.view.View getZoomControls()Deprecated; Google已声明不支持使用该方法
void preLoad()调用无效
void setSatellite(boolean on) 不支持卫星图
void setStreetView(boolean on)不支持街景图MapView
void setTraffic(boolean on)  不支持交通图MapView.LayoutParams java.lang.String debug(java.lang.String
output)
不支持
protected boolean isLocationDisplayed()Google内部统计函数,不支持
MapActivity
protected abstract boolean
isRouteDisplayed()
Overlay.Snappable boolean onSnapToItem(int x, int y,
mapView)
不支持
ItemizedOverlay boolean onSnapToItem(int x, int y,
mapView)
不支持
MyLocationOverlay boolean onSnapToItem(int x, int y,
mapView)
不支持TrackballGestureDetector手势探测,此类中全部函
Socialist culture in China set up the overall national security concept, respect the sovereignty of networks, build global Internet governance system adhere to the correct view, building human fates. (6) to grasp the full strictness requirement, and strict adherence to the party's political discipline and rules, loyal, clean, play, strengthen the wind against corruption, adhere to the "Tigers" and "fly". (7) the
在高德中未支持的Google Map API
类名方法注释
数不支持
注意事项
下面介绍在程序开发中需注意的问题:必须在manifest 中设置相应的权限,代码如下:
源码复制打印关于1<uses-permission
2android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-
permission>
3<uses-permission
4android:name="android.permission.ACCESS_FINE_LOCATION"></uses-
permission>
5<uses-permission
6android:name="android.permission.INTERNET"></uses-permission>
狗字成语7<uses-permission
8android:name="android.permission.ACCESS_NETWORK_STATE"></uses-
permission>
9<uses-permission
10android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-
permission>
11<uses-permission
型采12android:name="android.permission.READ_PHONE_STATE"></uses-permission>  13<uses-permission
14android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>  15<uses-permission
16android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>  地图显示
如何把API 添加到我的Android 工程中?
首先创建工程,并在工程Build Path>Configure Build Path…>libraries 中选择“Add Externel JARs…”,选定MapApi.jar,点击OK,这样就可以将高德地图Android API 库文件引入。然后在工程Build Path>Configure Build Path…>Order and Export 中将引入的库文件MapApi.jar 选中,点击
OK,这样您就可以在您的程序中使用高德地图API 了。
栅格地图显示
MapActivity 是一个抽象类,任何想要显示MapView 的activity 都需要派生自MapActivity。并且在其派生类的onCreate() 中,都要创建一个MapView 实例。
源码复制打印关于17public class GridMapView extends MapActivity{
18private MapView mMapView;
19private MapController mMapController;
20private GeoPoint point;
21@Override
22/**
23*显示栅格地图,启用内置缩放控件,并用MapController 控制地图的中心点及Zoom 级别24*/
25protected void onCreate(Bundle  savedInstanceState) {
26// TODO Auto-generated method stub
28setContentView(R.layout.mapview);
29mMapView = (MapView)  findViewById(R.id.mapView);
30mMapView.setBuiltInZoomControls(true);  //设置启用内置的缩放控件
31mMapController =  Controller();  // 得到mMapView 的控制权,可以用它控制和驱动平移和缩放
32point = new GeoPoint((int) (39.982378 *  1E6),
33(int) (116.304923 * 1E6));  //用给定的经纬度构造一个GeoPoint,单位是微度(度* 1E6)
34mMapController.setCenter(point);  //设置地图中心点
35mMapController.setZoom(12);    //设置地图zoom 级别
36}
37}
在布局xml 中添加地图控件:
源码复制打印关于38<?xml version="1.0" encoding="utf-8"?>
39<LinearLayout
xmlns:android="schemas.android/apk/res/android"
景德镇陶瓷名人录
40xmlns:autonavi="schemas.android/apk/res/com.AMap"
41android:orientation="vertical" android:layout_width="fill_parent"
42android:layout_height="fill_parent">
43<com.amap.mapapi.map.MapView android:id="@+id/mapView"
44android:layout_width="fill_parent" android:layout_height="fill_parent"
45android:clickable="true"
46/>
47</LinearLayout>
结果见图3-1 栅格地图显示效果图:
图3-1 栅格地图显示效果图
矢量地图显示
将libminimapv320.so 复制到工程目录下的libs\armeabi,目录结构见图3-2 工程目录结构图:
图3-2 工程目录结构图
代码如下:
源码复制打印关于48public class VectorMapView extends MapActivity{
49private MapView mMapView;
50private MapController mMapController;
51private GeoPoint point;
52@Override
53/**
54*显示矢量地图,将libminimapv300.so 复制到工程目录下的libs\armeabi。
55*启用内置缩放控件,并用MapController 控制地图的中心点及Zoom 级别
56*/
57protected void onCreate(Bundle  savedInstanceState) {
58// TODO Auto-generated method stub
59this.setMapMode(MAP_MODE_VECTOR);//设置地图为矢量模式
61setContentView(R.layout.mapview);
62mMapView = (MapView)  findViewById(R.id.mapView);
63mMapView.setBuiltInZoomControls(true);  //设置启用内置的缩放控件

本文发布于:2024-09-22 12:36:46,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/501724.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:地图   支持   位置
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议