demo运行前请确保安装了GoogleAPI的android插件,(请采用GoogleAPI模式)
package com.royal.googleMap;
import java.util.List;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Point;
import android.os.Bundle;
import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;
import com.google.android.maps.Overlay;
public class GoogleMapDemoActivity extends MapActivity {
private MapView mapView;
private GeoPoint geoPoint;
private MapController mapController;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mapView = (MapView) findViewById(R.id.map_view);
// mapView = new MapView(this,"05RuQFhSv2zb5X5u91S0hcsIdcVwFNfwrE__18w");
// 设置为交通模式
// mapView.setTraffic(true);
// 设置为卫星模式
// mapView.setSatellite(true);
// 设置为街景模式
mapView.setStreetView(true);
// 取得MapController对象(控制MapView)
mapController = mapView.getController();
mapView.setEnabled(true);
mapView.setClickable(true);
// 设置地图支持缩放
mapView.setBuiltInZoomControls(true);
// 设置起点
geoPoint = new GeoPoint((int) (22.744680959764427 * 1000000),
(int) (113.59523713588715 * 1000000));
// 定位
mapController.animateTo(geoPoint);
// 设置倍数(1-21)
mapController.setZoom(12);
// 添加Overlay,用于显示标注信息
MyLocationOverlay myLocationOverlay = new MyLocationOverlay();
List<Overlay> list = mapView.getOverlays();
list.add(myLocationOverlay);
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
/**
* 绘图类
* @author Royal
*
*/
class MyLocationOverlay extends Overlay {
@Override
public boolean draw(Canvas canvas, MapView mapView, boolean shadow,
long when) {
// TODO Auto-generated method stub
super.draw(canvas, mapView, shadow);
Paint paint = new Paint();
Point myScreenCoords = new Point();
// 将经纬度转换成实际屏幕坐标
mapView.getProjection().toPixels(geoPoint, myScreenCoords);
paint.setStrokeWidth(1);
paint.setARGB(255, 255, 0, 0);
paint.setStyle(Paint.Style.STROKE);
Bitmap bmp = BitmapFactory.decodeResource(getResources(),
R.drawable.home);
canvas.drawBitmap(bmp, myScreenCoords.x, myScreenCoords.y, paint);
canvas.drawText("Here am I", myScreenCoords.x, myScreenCoords.y, paint);
return true;
}
}
}
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.royal.googleMap"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="7" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<!-- 声明适用Google Map API -->
<uses-library android:name="com.google.android.maps"/>
<activity
android:label="@string/app_name"
android:name=".GoogleMapDemoActivity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>
- 大小: 14 KB
分享到:
相关推荐
public void onMapReady(GoogleMap googleMap) { // 在这里,你可以对地图进行各种定制,如添加标记、路径等 GoogleMap map = googleMap; map.getUiSettings().setZoomControlsEnabled(true); map....
GoogleMapDemo是一个简单的基于Google Maps Android API v2的demo并实现了通过...【注意:】运行此demo项目前,需要在AndroidManifest.xml设置你自己的googleMap key和相应的keystore,否则运行后地图显示一片空白。
一个简单的Android实现GoogleMapApi v2展示Demo,注意:需下载安装Google Play ,需自己在google官方申请地图API Key, 需依赖google-play-services_lib作为类库(google-play-services_lib已有)
总结来说,这个"GoogleMap谷歌地图demo"是一个利用GoogleMap API实现的综合地图应用实例,可能包含了地图显示、定位、路线规划、自定义样式等多种功能。开发者可以通过学习和分析这个demo,掌握如何在自己的项目中...
接着,创建一个`GoogleMap`对象并设置其基本配置,如地图类型、缩放级别等: ```java GoogleMap map = mapView.getMap(); map.setMapType(GoogleMap.MAP_TYPE_NORMAL); map.getUiSettings().setZoomControlsEnabled...
在回调的`onMapReady(GoogleMap googleMap)`方法中,可以设置地图的属性,如中心点、缩放级别、标记、路径等。 6. **定位服务**:启用定位服务可以让应用获取用户的实时位置。通过调用`GoogleMap`对象的`...
通过`GoogleMap`对象,我们可以监听用户的触摸事件,实现这些操作。 ### 九、离线地图 虽然默认情况下,Android Maps API需要网络连接,但可以通过Google Maps静态API实现离线地图功能。预先下载地图区域的图片,...
public void onMapReady(GoogleMap googleMap) { // 这里是地图加载成功后的操作 } }); ``` 在onMapReady()回调中,我们可以对GoogleMap对象进行操作,比如设置初始位置、启用定位、添加标记等。例如,设置地图...
【标题】"googlemap地图demo+doc" 涉及的知识点主要集中在使用Google Map API在Android平台上进行地图开发,包括展示地图、定位、添加标记、路径规划等基本功能的实现。Google Map API是Google提供的一个强大的服务...
android安卓绝对可以获取GPS经纬度的google map demo。使用谷歌api,不需要网络,可以直接获取经纬度,获取经纬度写到一个类中,直接调用start,关闭使用stop。 注意要在室外使用! 打开应用,马上开始获取地址,多次...
googleMap.setMapType(GoogleMap.MAP_TYPE_SATELLITE); // 设置为卫星视图 ``` 以上步骤完成后,一个基本的Google Maps Demo就能在Android设备上运行,显示并操作地图。这个Demo展示了如何在Android应用中加载和...
在Android中,我们可以利用Google Maps SDK或者开源的OSM(OpenStreetMap)来实现GIS功能。这些SDK提供了地图展示、定位、路线规划、覆盖物(如标记、信息窗口)等功能,让开发者可以构建功能强大的地图应用。 综上...
public void onMapReady(GoogleMap googleMap) { // 地图初始化完成后的操作 } }); ``` 4. **显示基础地图** 在`onMapReady`回调中,我们可以获取到地图对象`GoogleMap`,并设置地图的基本属性,如地图类型、...
在Android平台上,Google Map是一个非常重要的工具,广泛用于开发各种应用程序,尤其是物流系统。通过集成Google Map API,开发者可以创建直观、动态的地图界面,展示实时位置、路径追踪、信息气泡等多种功能。以下...
使用`GoogleMap`的`setMyLocationEnabled(true)`方法可以启用显示用户当前位置的功能。还可以设置`LocationSource`接口来提供自定义的位置更新。 7. **添加标记(Marker)** 如果要标记特定位置,可以使用`Google...
例如,你可以调用`googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(LatLng, zoomLevel))`来改变相机的位置和缩放级别,或者使用`googleMap.addMarker(MarkerOptions)`来添加标记。 此外,为了实现定位功能...
Android上演示调用谷歌地图的演示DEMO,需要手机先安装谷歌服务
googleMap.setMapType(GoogleMap.MAP_TYPE_NORMAL); googleMap.getUiSettings().setZoomControlsEnabled(true); } // 在其他生命周期方法中进行对应处理 // ... } ``` 现在地图已经可以展示了,接下来我们介绍...
在IT行业中,GoogleMap定位系统和与Web服务的连接是两个关键的技术领域,它们在现代移动...通过学习和理解这个Demo,开发者可以掌握如何在Android应用中有效地利用GoogleMap和Web服务,提升应用的功能性和用户体验。
本项目"Android Map Demo"旨在展示如何有效地实现在Android应用程序中集成地图,并解决GPS定位响应问题。在这个Demo中,开发者采取了一种混合策略,即结合GPS和网络定位来提供更准确且快速的位置信息。 首先,我们...