编写这个程序之前需要有一个Google地图扩展库在SDK中,一般来说,android 1.5中就已经有了。如果没有的话可以在这里下载:
http://code.google.com/android/add-ons/google-apis
这个插件要求android 1.5或者更高的版本。下载后按照自己的环境做相应的调整。
第一步:先建立新的activity名字叫AndroidMapView;
第二步:因为我是用的是Google的地图库,而非Android标准库。所以我们先要在AndroidManifest.xml文件<application>中作出声明。 <uses-library android:name="com.google.android.maps" />
复制代码第三步:以为这个程序需要实时的从Google地图库中读取信息,所以添加接入Internet权限。在<manifest>中声明: <uses-permission android:name="android.permission.INTERNET" />
复制代码第四步:现在主要的配置文件都已经开放给我们。定义一个layout给com.google.android.maps.MapView其中包括android.widget.RelativeLayout : <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mainlayout"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<com.google.android.maps.MapView
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true"
android:apiKey="Your Maps API Key"
/>
</RelativeLayout>
复制代码Clickable属性决定了用户能否和地图之间进行互动。一次设置成TRUE。apiKey属性中包含了Google地图API密钥,由于MapView使用的是Google地图数据,在此主要是为了获得地图数据。
第五步:打开Java文件。即AndroidMapView.java文件。在这个activity中我们继承了一个特别的类叫做:MapActivity 。
因此将程序开头改成如下形式:
public class AndroidMapView extends MapActivity {
第六步:这里需要一个名叫isRouteDisplayed()的方法,这个方法是必须的。用来获取地图API密匙,一旦获得就会传给上边提到的apiKey这个变量。
Android中提供了一个叫ZoomControls的控件对地图来进行放大和缩小处理。
第七步:回到配置文件中来,我们需要一个新的ViewGroup布局器来放置ZoomControls这个控件。 <LinearLayout
android:id="@+id/zoomview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/mapview"
android:layout_centerHorizontal="true"
/>
复制代码第八步:回到AndroidMapView.java文件中。 LinearLayout linearLayout;
MapView mapView;
ZoomControls mZoom;
复制代码第九步: onCreate()在这个方法中将第八部中定义的变量全部初始化。 linearLayout = (LinearLayout) findViewById(R.id.zoomview);
mapView = (MapView) findViewById(R.id.mapview);
mZoom = (ZoomControls) mapView.getZoomControls();
复制代码第十步:将控件ZoomControls添加到LinearLayout中去。 linearLayout.addView(mZoom);
复制代码第十一步:到这我们就可以运行这个程序了。
需要注意的是红色字体部分,很有肯能忘记了填写apikey。如果没有可以参照这一篇《Android开发如何利用Google Maps》自己申请一个。
AndroidMapView.java文件的源码 package android.mapview;
import android.os.Bundle;
import android.widget.LinearLayout;
import android.widget.ZoomControls;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
public class AndroidMapView extends MapActivity {
/** Called when the activity is first created. */
LinearLayout linearLayout;
MapView mapView;
ZoomControls mZoom;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
linearLayout = (LinearLayout) findViewById(R.id.zoomview);
mapView = (MapView) findViewById(R.id.mapview);
mZoom = (ZoomControls) mapView.getZoomControls();
linearLayout.addView(mZoom);
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
}
复制代码main.xml文件的源码 <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mainlayout"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<com.google.android.maps.MapView
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true"
android:apiKey="your api key"
/>
<LinearLayout
android:id="@+id/zoomview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/mapview"
android:layout_centerHorizontal="true"
/>
</RelativeLayout>
复制代码AndroiMaifest.xml文件的源码 <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="android.mapview"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/map" android:label="@string/app_name">
<uses-library android:name="com.google.android.maps" />
<activity android:name=".AndroidMapView"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="3" />
<uses-permission android:name="android.permission.INTERNET" />
</manifest>
分享到:
相关推荐
android谷歌地图开发
在Android平台上进行Google地图开发是一项常见的任务,它允许开发者集成地图功能到应用程序中,提供定位、导航、路线规划等服务。Google地图API是Google提供的一个强大的工具,它可以帮助开发者创建丰富的地图应用,...
android Google地图开发源程序,主要功能包括根据地名定位到该地,输入两个地名画出两地间的路径
"老罗android 百度地图开发源码"是一个示例项目,它展示了如何在Android应用程序中集成并使用百度地图SDK。通过对这个源码的学习,我们可以深入理解百度地图API的使用方法,提升我们的Android开发技能。 首先,我们...
很详细的android Google地图开发文档
本篇将深入探讨如何在Android应用中使用谷歌地图API以及如何利用高德地图的数据资源来加载自定义的瓦片图层。这种技术通常用于显示特定区域的高精度地图、卫星图像或者自定义的地图样式。 首先,我们要了解谷歌地图...
在Android平台上进行天地图开发,主要是为了让移动应用能够接入并展示天地图提供的地理信息数据,为用户提供基于位置的服务。天地图是由中国国家测绘局主导建设的全国统一的地理信息公共服务平台,提供了丰富的测绘...
在Android开发中,集成Google Maps SDK和Google Location SDK是实现地图展示、定位功能的重要环节。本文将详细讲解如何使用这两个SDK来实现相应的功能,并提供一些关键知识点。 首先,我们需要在项目中添加Google ...
在Android开发中,集成并使用Google地图是一项常见的需求。Google地图API为开发者提供了丰富的功能,如显示地图、添加标记、绘制路径、测量距离等。本文将深入探讨如何在Android应用中实现这些功能。 首先,要使用...
"Android手机Google地图开发中的经纬度转换问题" 在Android手机Google地图开发中,经常会遇到与实际地图上经纬度的转换问题。这篇文章总结了Google Map API中的经纬度标示方法,并提供了实际示例,展示如何将实际...
本文将深入探讨如何在Android Studio环境中利用百度地图API进行开发,结合提供的"基于AndroidStudio的Baidu地图开发源码",我们将详细解析相关知识点。 一、Android Studio与百度地图SDK 1. Android Studio:...
标题中的"C#开发Android 谷歌地图完整源码(使用Mono技术基于vs2010开发)"指的是一项利用C#编程语言,通过Mono框架,并在Visual Studio 2010环境下,实现对Android应用的开发,特别是集成并展示了谷歌地图功能的项目...
在Android平台上进行百度地图开发是一项常见的任务,它涉及到地理定位、地图展示、路线规划等多个功能。下面将详细讲解如何在Android应用中集成和使用百度地图API。 首先,我们需要在百度地图开放平台...
谷歌地图开发,谷歌地图开发,谷歌地图开发
在技术实现层面,《谷歌地图开发.doc》详细阐述了如何利用Android系统的GPS定位服务来获取位置信息。这一过程涉及到多个类和接口的交互,包括`LocationManager`、`LocationListener`、`Location`和`LocationProvider...
在Android开发中,集成Google地图并实现地图图层叠加是一项常见的任务,这使得开发者能够创建出功能丰富的地理位置应用。Google地图API提供了强大的功能,允许我们不仅显示基础的地图数据,还能添加自定义图层,比如...
在Android平台上进行移动地图开发是一项综合性的技术工作,涉及到Android SDK、百度地图API以及地理位置服务等多个方面的知识。本文将深入探讨这一主题,帮助你理解如何在Android 2.3版本上构建一个功能丰富的地图...
总之,`TiledServiceLayer`是Android地图应用开发中的一个重要工具,通过自定义服务层,开发者可以轻松地接入各种地图服务,如天地图和谷歌地图。在实际开发中,需要充分考虑性能、用户体验和错误处理,以构建出高...
在Android应用开发中,集成高德地图并利用KML(Keyhole Markup Language)文件来展示地理数据...这个过程涵盖了XML解析、地图API的使用以及Overlay对象的创建等多个知识点,是Android地图开发中一个实用且重要的技能。
在Android开发中,Google地图API是一个非常重要的工具,它允许开发者在应用程序中集成地图功能,为用户提供导航、定位、地理编码、路线规划等服务。在这个名为"Android google地图api Demo"的项目中,我们将深入探讨...