Google Map 学习 (1)
使用地图,需要调用另一个Jar包:com.google.android.maps,里面包含了操作地图的各种类。
三个核心的类:Mapview MapController GeoPoint
使用这个包(不时android的标准包)时需要添加权限: <uses-library android:name="com.google.android.maps" />
MapActivity
在这个MapActivity上可以显示空间MapView,比Activity多了一个功能:负责开启和关闭MapView后面的服务Service。
MapView
mapView.setClickable(true); //设置mapView可以点击
mapView.setBuiltInZoomControls(true); //以上两句话可以使地图缩放,移动。
可以显示一个地图,具体的使用可以很复杂。以后重点研究下。
MapController = mapView.getController(); //一个工具类,负责对地图的操作
mMapController.setCenter(getGeoByLocation(location)); // 设置中心位置
mMapController.setZoom(15); //对地图缩放,放大倍数
android.location.LocationManager
获取系统提供的定位service,为系统服务:
locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
// 设置监听器,自动更新的最小时间为间隔N秒(1秒为1*1000,这样写主要为了方便)或最小位移变化超过N米
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,100 * 1000, 500, locationListener);
LocationListener
当location改变时,负责接收locationManager的通知
必须有这一句:
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,100 * 1000, 500, locationListener);
// 获得当前位置
Location location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
GeoPoint
代表了一个位置,经度和纬度(需要经度和纬度都乘以10的6次方)。是对经度和纬度的封装。
Overlay是附加在Google Map上的图片,应用可以添加多个图片。
更多相关文章
- android自APP打开高德,百度,腾讯地图APP调用(整理非原创)
- android 根据经纬度定位所在城市
- android 百度地图 画轨迹
- 【Android】ImageMap,图片地图
- 【Android】高德地图2DMap,隐藏“高德地图”logo样式(不同版本或有
- 关于Android高德地图4.12无法显示地图只显示Logo问题,非只添加 j
- Android通过原生方式获取经纬度与城市信息的方法