由于工作需要,最近对Android的各大地图进行了试用。

其中有Google地图,百度地图,高德地图,还有开源的OSM。

在使用Google地图的时候,官网流程写的非常清楚,但是其中也遇到一些问题。这里我将我的流程写出来,方便他人。

这个是官方安装地址:https://developers.google.com/maps/documentation/android/start#getting_the_google_maps_android_api_v2

注意,本猫用的是ADT,所以,之后的搭建方法,均是Eclipse下的,使用Android studio的朋友,本文不适合你们……

#0,搭建Android环境。

这个。。。如果不会,请在网上搜索,很多详细的安装教程。

给大家一个官方的链接地址:http://developer.android.com/sdk/index.html

#1,下载和配置Google Play services SDK。

很多人在搭建了Android环境后,并没有下载和配置Google Play services SDK,因为很多的开发并不需要它的支持。下面我们介绍如何下载和配置。

先给出官方的连接地址:http://developer.android.com/google/play-services/setup.html

首先,打开Eclipse,点击Android SDK Manager。

之后选择“Extras”,找到下面的Google Play services和Google Repository,安装他们。安装完成后,应该如下图一样,Status显示的为Installed。

至此,我们已经下载完成了。

下面,我们需要将下载的东东导入到Eclipse中,因为它是通过Android的库引用的,而不是直接使用一个jar包。

导入项目。点击File-->Import。

选择“Existing Android Code Into Workspace",点击next。

找到下载的google play services,并将其导入。其路径,在你的"SDK Manager.exe"同级目录的sdk\extras\google\google_play_services\libproject\google-play-services_lib下。

比如,我的是:D:\adt-bundle-windows\sdk\extras\google\google_play_services\libproject\google-play-services_lib。

之后选择项目,然后请务必勾选"Copy projects into workspace"选项,如果不勾选,则在后面项目引用时,会出现找不到文件等错误。最后,点击finish。

导入后,有可能出现错误:Unable to resolve target 'android-9'。这时,打开项目中的”project.properties”,将target=android-9修改为你对应的版本。

如果不知道修改为多少,在Window-->Preferences中,选择Android,在右边就可以看到了。

   

#2,建立测试项目GoogleMaps.

现在,建立一个项目,命名为GoogleMaps,具体如何建立。。。不用说了吧。。。很简单的。。。

在GoogleMaps上点击右键,选择Preferences。选择Android,在右边的Library中选择Add,在弹出的对话框中选择google-play-services_lib,然后点击OK,再点击OK。

至此,项目新建并且引用完成。

#3,申请Google Maps API Key.

照旧,先给出官方的教程方法:https://developers.google.com/maps/documentation/android/start#obtain_a_google_maps_api_key

首先,访问:https://code.google.com/apis/console/?noredirect。在其中选择Services。

注意,没有账号之类的,请自行注册,这个这里不做讲解。成功登陆后,就是下图的样子。

找到其中的Google Maps Android API v2项,确保它已经打开。没有打开请点击那个OFF滑动按钮打开它。

之后,点击"API Access",选择Create new Android Key。

这里,我们回到Eclipse,在Window-->Preferences中,选择Android下面的Build,在右边就可以看到SHA1的值了。如果找不到这个界面,请看#1的最后一步。

下面,我们再回到网页,在这里输入刚刚查询到的"SHA1"码加上一个分号加上你刚刚创建的项目的包名。

注意,包名后面没有分号。点击Create。

这时,等待1到2秒,这时,就会出现Android的API key了。

到这里,申请Key完成。

#4,完善测试项目GoogleMaps.

首先,打开AndroidMainfest.xml文件。在其中添加如下代码。

     <uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="19" /> <uses-feature
android:glEsVersion="0x00020000"
android:required="true" /> <uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

在其中的application节点下,添加如下代码。

         <meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="就是#3申请到的Android API Key" />

打开activity_main.xml文件。将其修改为:

 <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"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" > <fragment
android:id="@+id/map"
android:name="com.google.android.gms.maps.MapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" /> </RelativeLayout>

然后,运行就可以了。

到此,在Android上就可以看到地图出现了。下面是效果图。

Android Google Maps 开始的更多相关文章

  1. Android Google Maps API 网络服务用于网络定位、计算路线、获取经纬度、获取详细地址等

    extends:http://blog.csdn.net/h7870181/article/details/12505883 Google Maps API 网络服务 官网地址 : https://d ...

  2. Android Google Maps 监听地图缩放

    接上篇.http://www.cnblogs.com/maomishen/p/3556297.html 由于公司项目要求,需要对google map监听地图的缩放(zoom)来进行一些操作. 但是在网 ...

  3. Android系统Google Maps开发实例浅析

    Google Map(谷歌地图)是Google公司提供的电子地图服务.包括了三种视图:矢量地图.卫星图片.地形地图.对于Android系统来说,可以利用Google提供的地图服务来开发自己的一些应用. ...

  4. Google Maps Android API v2 (4)- 地图类型

    地图类型 地图内的谷歌地图的Android API的种类有很多.地图的类型管辖地图的整体代表性.例如,地图集通常包含政治地图,专注于显示边界和道路地图,显示了一个城市或地区的所有道路. Android ...

  5. Google Maps Android API v2 (3)- 地图添加到Android应用程序

    添加地图的基本步骤是: (一旦)按照以下步骤[入门] [开始],获得API,获取密钥所需的属性,并添加到您的Android清单. 添加一个碎片对象 要处理地图的活动.做到这一点最简单的方法是增加一个  ...

  6. Google Maps API v2 Demo Tutorial

    申请API KEY https://code.google.com/apis/console/?noredirect 1. 创建项目,名称随意,只是为了区分 2. 开启Google Maps Andr ...

  7. (6)Xamarin.android google map v2

    原文 Xamarin.android google map v2 Google Map v1已经在2013年的3月开始停止支持了,目前若要在你的Android手机上使用到Google Map,就必须要 ...

  8. Google Maps API V2

    1. 在AndroidManifest.xml的application节点中,添加Google play service的版本号: <meta-data android:name="c ...

  9. Android Google Map v2具体解释:开发环境配置

    Android Google Map v2具体解释:开发环境配置                                       --转载请注明出处:coder-pig 说在前面: 说到地 ...

随机推荐

  1. CF235C 【Cyclical Quest】

    厚颜无耻的发一篇可能是全网最劣解法 我们发现要求给定的串所有不同的循环同构出现的次数,可以直接暴力啊 因为一个长度为\(n\)的串,不同的循环同构次数显然是不会超过\(n\)的,所以我们可以直接对每一 ...

  2. 关于message pack as3 版本的一些修改。

    玩个人项目的时候,根据前辈的推荐开始用messagepack,分别是py版和as3版: 然后在github上找到了demonsters的as3模块,于是颠屁颠屁地拿来用了,用的时候发现了一些小地方过不 ...

  3. Educational Codeforces Round 53 (Rated for Div. 2) C. Vasya and Robot 【二分 + 尺取】

    任意门:http://codeforces.com/contest/1073/problem/C C. Vasya and Robot time limit per test 1 second mem ...

  4. Django学习之ORM操作

    一.一般操作 二.必知必会13条 返回QuerySet对象的方法有 特殊的QuerySet 返回具体对象的 返回布尔值的方法有 返回数字的方法 三.单表查询之神奇的双下划线 四.ForeignKey操 ...

  5. java中equals以及==的用法(简单介绍)

    简单介绍 equals方法是java.lang.Object类的方法 有两种用法说明: 一.对于字符串变量来说,使用“==”和“equals()”方法比较字符串时,其比较方法不同. 1.“==”比较两 ...

  6. python—迭代器

    迭代器 这些可以直接作用于for循环的对象统称为可迭代对象:Iterable. 可以使用isinstance()判断一个对象是否是Iterable对象: >>> from colle ...

  7. o'Reill的SVG精髓(第二版)学习笔记——第六章

    第六章:坐标系统变换 想要旋转.缩放或者移动图片到新的位置.可以给对应的SVG元素添加transform属性. 6.1 translate变换 可以为<use>元素使用x和y属性,以在特性 ...

  8. Java 依赖、关联、聚合和组合

    必须转一个,写的太好了! https://blog.csdn.net/zhengzhb/article/details/7190158

  9. 关于利用HashSet,split,deleteCharAt等方法详解

    1.首先了解一下HashSet的原理: Set接口  Set是对数学上集的抽象,Set中不包含重复的元素.如何界定是否是重复元素?Set最多可含一个null元素;对于任意的非null元素e1和e2,都 ...

  10. nmon监控linux系统性能

    Nmon是一款计算机性能系统监控工具,使用 Nmon 可以很轻松的监控系统的 CPU.内存.网络.硬盘.文件系统.NFS.高耗进程.资源等信息.[简单方便] Nmon 安装 到https://sour ...