Google map 是android platform中众多应用程序中的一员。
在移动开发中有两种方法使用google map。
第一种是使用web版本的map.实际实现是通过发送链接google 地图网站的intent,启动浏览器访问googlemap.没多大用处。
注意:使用此方法需在AndroidManifest.xml中加入相应的访问权限
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
第二种就是使用google map jar 包的开发。通过创建MapActivity,并使用MapView来呈现地图。
注意:使用此方法需在AndroidManifest.xml中加入相应的访问权限
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
GoogleMap library:
1)MapView:
Mapview是用来显示地图的view。当MapView获得焦点,可以控制地图的移动和缩放。
地图可以以不同的形式来显示出来,如街景模式,卫星模式等,通过setSatellite(boolean) setTraffic(boolean), setStreetView(boolean) 方法。
MapView只能被MapActivity来创建,这是因为mapview需要通过后台的线程来连接网络或者文件系统,而这些线程要由mapActivity来管理。
需要特别说明的一点是,从android 1.5开始,map的zoom采用了built-in机制,可以通过setBuiltInZoomControls(boolean)来设置是否在地图上显示zoom控件。
常用方法:getController() getOverlays() setSatellite(boolean) setTraffic(boolean), setStreetView(boolean) setBuiltInZoomControls(boolean) 等。
2)MapActivity:
MapActivity是一个抽象类,任何想要显示MapView的activity都需要派生自MapActivity。并且必须在其派生类的 onCreate()中,创建一个MapView实例,可以通过new MapView 或者通过layout XML来创建。
3)MapController
控制地图移动,伸缩,以某个GPS坐标为中心,控制MapView中的view,管理Overlay,提供View的基本功能。使用多种地图模式(地图模式(某些城市可实时对交通状况进行更新),卫星模式,街景模式)来查看Google Map。
常用方法:animateTo(GeoPoint point)setCenter(GeoPoint point)setZoom(int zoomLevel) 等。
4)Overlay
Overlay是覆盖到MapView的最上层,可以扩展其ondraw()接口,自定义在MapView中显示一些自己的东西。MapView通过MapView.getOverlays()对Overlay进行管理。
除了Overlay这个基类,Google还扩展了2个比较有用的Overlay
1.MylocationOverlay—集成了Android.location中接收当前坐标的接口,集成SersorManager中CompassSensor的接口
我们只需要enableMyLocation(),enableCompass就可以让我们的程序拥有实时的MyLocation以及Compass 功能(Activity.onResume()中)。
2.ItemlizedOverlay—管理一个OverlayItem链表,用图片等资源在地图上作风格相同的标记。
5)Projection:MapView中GPS坐标与设备坐标的转换(GeoPoint和Point)。
另外:
android.location包下的Geocoder类可以实现街道地址与经纬度之间的转换。
效果图:
注:代理问题不能展示地图。实际可以。
XML Layout:
源代码:
参考博客:
http://blog.csdn.net/L_serein/archive/2011/01/07/6122136.aspx
http://blog.csdn.net/mtawaken/archive/2010/12/17/6081886.aspx
分享到:
相关推荐
安卓 android google map 谷歌地图
Android Google map使用,Android Google map使用
Android google map API例子
一旦得到路线信息,可以在地图上绘制路径,使用`PolylineOptions`和`GoogleMap.addPolyline()`方法。 总的来说,实现Android上的Google Map导航功能涉及以下几个关键步骤: 1. 添加Google Play Services依赖 2. ...
在Android布局文件中添加MapView组件,通过设置API密钥和初始化GoogleMap对象,可以实现在应用中展示地图。同时,可以通过调整Zoom级别来控制地图的缩放程度,使用CameraPosition和CameraUpdateFactory来改变视图...
本篇将详细探讨如何在Android应用中使用GoogleMap进行定位。 首先,我们需要在项目中引入Google Play Services库,这是GoogleMap API的基础。在`build.gradle`模块文件中添加依赖: ```groovy dependencies { ...
public void onMapReady(GoogleMap googleMap) { // 这里可以进一步配置地图,比如设置缩放级别、启用定位等 } }); ``` 不忘在其他生命周期方法(如onResume(), onPause(), onDestroy())中调用对应的方法。 ...
"android"标签表明了这是关于Android平台的开发内容,而"googleMap"则指明了主要涉及Google Maps服务。在Android应用中集成Google Maps,开发者需要在Google Cloud Console创建项目,获取API密钥,然后在...
googleMap.setMapType(GoogleMap.MAP_TYPE_NORMAL); // 开启定位功能 if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) { ...
申请Android Google Map API key
压缩包包含play-services-maps-16.1.0.aar/play-services-places-15.0.1.aar/play-services-location-15.0.1.aar/android-maps-utils-0.5.aar 等...
googleMap.setMapType(GoogleMap.MAP_TYPE_NORMAL); LatLng sydney = new LatLng(-34, 151); MarkerOptions markerOptions = new MarkerOptions().position(sydney).title("悉尼"); googleMap.addMarker...
实现通过GPS或NetWork获取当前位置的经纬度,并且在Google Map Android v2上显示
在Android应用开发中,结合Google Map提供路径查询和导航功能是一项常见的需求。本文将详细介绍如何在Android设备上实现这一功能,主要涉及Google Directions API的使用和解析返回的路线数据。 首先,Google ...
本文将详细介绍如何进行Android GoogleMap开发的基础设置,包括必要的配置和代码实现。 首先,你需要在Android SDK Manager中下载Google Play Services SDK。这通常位于Extras目录下,下载完成后,你将在SDK目录的...
public void onMapReady(GoogleMap googleMap) { map = googleMap; map.setMapType(GoogleMap.MAP_TYPE_NORMAL); LocationManager locationManager = (LocationManager) getSystemService(LOCATION_SERVICE); ...
### Android Google Map 入门详解 #### 一、准备工作 要想成功地开发一款基于Google Maps的应用程序,首先需要确保你的开发环境已经准备妥当。这包括申请必要的API密钥、设置正确的开发环境以及确保所有所需的组件...
googleMap.setMapType(GoogleMap.MAP_TYPE_NORMAL); googleMap.getUiSettings().setZoomControlsEnabled(true); } }); ``` 4. **添加标记和路径**: - 添加标记(Marker): ``` MarkerOptions ...
在这里,你可以获取到GoogleMap对象,进一步操作地图,例如设置初始位置、缩放级别,或者添加标记。 关于GPSTest,这是一个常见的Android GPS测试应用的名字,它通常用于测试设备的GPS接收器功能。在Android中,你...
##### 2.1 编写最简单的Android谷歌地图应用 1. **创建新的Android项目**:选择Google Maps Activity模板。 2. **配置Google Maps API**:确保你的API密钥已经正确配置在项目的`strings.xml`文件中。 3. **显示地图...