android高德api的使用

  • 格式:docx
  • 大小:68.96 KB
  • 文档页数:11

下载文档原格式

  / 26
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

高德API的使用

Ps: demo具体实现了

1.定位;

2.自定义位置小蓝点(弃系统提供的);

3.点击地图弹marker;

4.点marker弹infowindow,infowindow包括3块,点击1弹dialog输入兴趣点搜附近,点击2查看具体信息,点击3跳转到路线查询界面(默认从兴趣点到当前位置)

开发过程如下:

1.进入高德官网申请map api key ,这一步不能少,否则无法获取地图。像百度也需要。

2.在Manifest中添加必要权限:

android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

android:name="android.permission.ACCESS_COARSE_LOCATION"/>

android:name="android.permission.ACCESS_NETWORK_STATE"/>

android:name="android.permission.ACCESS_FINE_LOCATION"/>

android:name="android.permission.CHANGE_CONFIGURATION"/>

---------------------------------------------分割线-------------------------------------------

3.代码具体实现过程:

A.导入jar包:从官网下载最新的jar

B.在Main.xml中添加fragment用来显示地图。

android:id="@+id/map"

android:layout_width="match_parent"

android:layout_height="fill_parent"

class="com.amap.api.maps.SupportMapFragment"/>

---------------------------------------------分割线-------------------------------------------

C.MainActivity继承FragmentActivity,使用以下代码来初始化地图以及对地图添加监

听,启动定位等操作:

if (aMap == null) {

aMap = ((SupportMapFragment) getSupportFragmentManager()

.findFragmentById(R.id.map)).getMap();//获取地

图实例

if (aMap!=null) {

setCenterPoi();//最初显示的可视区域

setUpMap();//显示系统定位小蓝点

setMapListener();//对aMap添加监听器

}

}

---------------------------------------------分割线------------------------------------------- 上述代码中的3个方法如下:

private void setCenterPoi(){

LatLng latLng=new LatLng(31.23, 121.47);//默认城市经纬度

CameraPosition position=new CameraPosition(latLng,9, 0, 0);//相机位置,参数分别代表经纬度坐标,地图缩放级别4-20,可视区域倾斜角0-45°,可视区域指向的方向,以角度为单位,正北方向到地图方向逆时针旋转的角度0-360°

CameraUpdate cameraUpdate=

CameraUpdateFactory.newCameraPosition(position);//定义了一个可视区域的移动,具体参考api

aMap.moveCamera(cameraUpdate);//移动相机到可视区域}

---------------------------------------------分割线------------------------------------------- private void setUpMap() {

// 自定义系统定位小蓝点

MyLocationStyle myLocationStyle = new MyLocationStyle();

myLocationStyle.myLocationIcon(BitmapDescriptorFactory .fromResource(R.drawable.location_marker));

myLocationStyle.strokeColor(Color.BLUE);

myLocationStyle.strokeWidth(1);

aMap.setMyLocationStyle(myLocationStyle);

mAMapLocManager= LocationManagerProxy.getInstance(this);