`

Google Map API V2

 
阅读更多
以后如果要开发包含google map的程序就更麻烦咯
http://www.cnblogs.com/mengdd/archive/2013/01/01/2841390.html

找到篇不错的文章,大家可以参考一下
http://blog.sina.com.cn/s/blog_c2839d410101jahv.html

1. 创建Android工程
由于v2的key需要Google Play Service的支持,所以创建的工程需要将其引入

2. 获得keystore的SHA-1的fingerprint
%JAVA_HOME%\bin\keytool -list -v -keystore .android\debug.keystore
(Release时换成相应的keystore)

3. 获得Google Map API Key
打开https://code.google.com/apis/console并登录(第一次登录会提示创建API Project)
导航栏点击Services,找到Google Maps Android API v2,设置成ON(设置后左侧导航栏的内容会增加)
导航栏点击API Access -> Create new Android Key
输入SHA-1的fingerprint和工程的包名,用分号分隔
点击Create后就可以获得Key了(会获得2个Key,一个是对应Android设备的,另一个是对应Browser的)

4. 修改AndroidManifest.xml
添加Permission
<permission
    android:name="<your package name>.permission.MAPS_RECEIVE"
    android:protectionLevel="signature" />

<uses-permission android:name="<your package name>.permission.MAPS_RECEIVE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

添加API Key
<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

...

    <meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="<your API Key>" />
</application>


5. 在layout.xml上添加Google Map
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

    <fragment
        android:id="@+id/map"
        android:name="com.google.android.gms.maps.SupportMapFragment"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" />

</RelativeLayout>


6. 控制Google Map
由于使用了Fragment,所以要继承FragmentActivity
public class MainActivity extends FragmentActivity implements
		OnMapLongClickListener, OnMyLocationChangeListener {

	private GoogleMap map;
	private MarkerOptions destinationMarker;
	private LatLng myLatLng;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);

		Fragment fragmentMap = getSupportFragmentManager().findFragmentById(
				R.id.map);
		if (fragmentMap != null)
			map = ((SupportMapFragment) fragmentMap).getMap();

		if (map != null) {
			map.setMyLocationEnabled(true);
			map.setOnMyLocationChangeListener(this);
			map.setOnMapLongClickListener(this);

			// location lat lng
			LatLng latLng = new LatLng(0, 0);
			// add mark
			destinationMarker = new MarkerOptions();
			destinationMarker.position(latLng);
			destinationMarker.title("test");
			map.addMarker(destinationMarker);
			// move camera
			map.moveCamera(CameraUpdateFactory.newLatLngZoom(latLng, 12f));
		}
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.activity_main, menu);
		return true;
	}

	@Override
	public void onMyLocationChange(Location loc) {
		myLatLng = new LatLng(loc.getLatitude(), loc.getLongitude());
	}

	@Override
	public void onMapLongClick(LatLng point) {
		map.clear();
		destinationMarker = new MarkerOptions();
		destinationMarker.position(point);
		map.addMarker(destinationMarker);
	}
}
分享到:
评论

相关推荐

    google map api v2开发实例

    谷歌地图API V2是Google为开发者提供的一种强大的工具,用于在网页或移动应用中集成交互式地图功能。这个开发实例集全面介绍了如何利用这个API创建各种功能,对初学者来说是一份宝贵的资源。下面,我们将深入探讨这...

    google map api v2 版本

    public void onMapReady(GoogleMap googleMap) { // 在这里,你可以访问和操作GoogleMap对象 googleMap.getUiSettings().setZoomControlsEnabled(true); googleMap.moveCamera(CameraUpdateFactory....

    怎样申请以及使用google map API V2

    详细介绍怎样申请和使用GOOGLE MAP API

    google map v2 Demo

    public void onMapReady(GoogleMap googleMap) { // 在这里,你可以对地图进行各种定制,如添加标记、路径等 GoogleMap map = googleMap; map.getUiSettings().setZoomControlsEnabled(true); map....

    google map v2版本下的地图定位

    5. **地图初始化**:在代码中,需要初始化GoogleMap对象,如`mapFragment.getMapAsync(new OnMapReadyCallback() {...})`,并在回调中进行地图设置和事件处理。 6. **位置权限**:Android 6.0(Marshmallow)及以上...

    Google Maps Android API v2新API全部使用方法的Demo

    googleMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() { @Override public boolean onMarkerClick(Marker marker) { marker.showInfoWindow(); // Customize the infoWindow with your ...

    Google Map API

    总结起来,这个压缩包包含了一系列关于Google Maps API的学习资源,从最新的JavaScript API V3到历史版本的V2,以及KML的中文指南,适合不同层次和需求的开发者。通过深入学习这些文档,开发者可以掌握如何在自己的...

    Android的mapApi

    googleMap.setMapType(GoogleMap.MAP_TYPE_SATELLITE); // 卫星 googleMap.setMapType(GoogleMap.MAP_TYPE_HYBRID); // 卫星+道路 googleMap.setMapType(GoogleMap.MAP_TYPE_TERRAIN); // 地形 googleMap....

    Google Map V2在Android中的应用

    在Android平台上,Google Maps API V2的集成与应用是一个重要的知识点,它允许开发者在应用程序中嵌入实时的、交互式的地图服务。这篇文章将深入探讨如何在Android项目中使用Google Maps API V2,以及相关的源码解析...

    Googlemap_API教程

    《Googlemap_API教程详解》 在IT开发领域,Googlemap_API是一个强大的工具,它允许开发者在网站或应用中集成Google地图的功能,实现地理位置信息的展示、路径规划等复杂任务。本教程将深入讲解如何使用Googlemap_...

    Android google map apiv2的最新申请密钥方式

    googleMap.setMapType(GoogleMap.MAP_TYPE_NORMAL); googleMap.getUiSettings().setZoomControlsEnabled(true); } }); ``` 4. **添加标记和路径**: - 添加标记(Marker): ``` MarkerOptions ...

    Android Google Map v2,继承FragmentActivity 使用MapFragment实现定位

    private GoogleMap googleMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_my_map); // 获取MapFragment并...

    Android-Google-Map-APi.doc.zip_android_google map android

    本文档将深入探讨Android Map API v1,这一版本虽然已被更新的v2替代,但对于理解地图集成的基本原理仍然具有参考价值。 **1. 安装与配置** 在使用Android Map API v1之前,开发者需要在项目中添加Google Maps库。...

    Google Maps API V3 中文参考文档(JavaScript)

    在 Google Maps API V3 中,Map 是地图的核心组件,提供了多种配置选项和事件监听器。开发者可以使用 MapOptions 对象来配置地图的基本属性,如中心点、缩放级别、地图类型等。同时,MapTypeId 对象提供了多种地图...

    Google Api之Google maps代码

    在IT行业中,Google Maps API是一个极其重要的工具,它允许开发者集成地图功能到自己的网站或应用程序中,提供导航、定位、地理编码、路线规划等多种服务。本篇将详细讲解基于JavaScript的Google Maps API的使用,...

    android google map 应用

    在Android布局文件中添加MapView组件,通过设置API密钥和初始化GoogleMap对象,可以实现在应用中展示地图。同时,可以通过调整Zoom级别来控制地图的缩放程度,使用CameraPosition和CameraUpdateFactory来改变视图...

    Google地图API教程v2

    【Google地图API教程v2】主要讲解了如何在应用程序中集成和操作Google地图的基本知识,尤其是针对GMap2对象的使用。以下是对其中关键知识点的详细说明: 1. **地图基础知识**:Google地图API的核心是地图对象,它...

    google的API接口

    class GoogleMap { private $name, $latitude, $longitude, $level; public function __construct($name, $latitude, $longitude, $level) { $this-&gt;name = $name; $this-&gt;latitude = $latitude; $this-&gt;...

Global site tag (gtag.js) - Google Analytics