2012-04-27 122 views
1

我想显示设备在谷歌地图中的当前位置我该怎么做呢我现在正在显示普通地图。以下代码显示设备的纬度和高度位置如何使用该地图在地图中显示地址和语言。如何显示Android Google地图中的当前位置?

package com.appulento.mapsexample.pack; 
import android.content.Context; 
import android.content.Intent; 
import android.location.Location; 
import android.location.LocationListener; 
import android.location.LocationManager; 
import android.os.Bundle; 
import android.os.Handler; 
import android.widget.Toast; 

import com.google.android.maps.MapActivity; 
import com.google.android.maps.MapView; 

    public class MapsMianClass extends MapActivity { 
     /** Called when the activity is first created. */ 
     @Override 
     public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.main); 
      MapView mapView = (MapView) findViewById(R.id.mapview1); 
      mapView.setBuiltInZoomControls(true); 



      /* Use the LocationManager class to obtain GPS locations */ 
      LocationManager mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); 

      LocationListener mlocListener = new MyLocationListener(); 
      mlocManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mlocListener); 
      } 

      /* Class My Location Listener */ 
      public class MyLocationListener implements LocationListener 
      { 

      @Override 
      public void onLocationChanged(Location loc) 
      { 
       loc.getLatitude(); 
       loc.getLongitude(); 

       String Text = "My current location is: " + 
       "Latitud = " + loc.getLatitude() + 
       "Longitud = " + loc.getLongitude(); 

       Toast.makeText(getApplicationContext(), Text, Toast.LENGTH_SHORT).show(); 
      } 

      @Override 
      public void onProviderDisabled(String provider) 
      { 
       Toast.makeText(getApplicationContext(), "Gps Disabled", Toast.LENGTH_SHORT).show(); 
      } 

      @Override 
      public void onProviderEnabled(String provider) 
      { 
       Toast.makeText(getApplicationContext(), "Gps Enabled", Toast.LENGTH_SHORT).show(); 
      } 

      @Override 
      public void onStatusChanged(String provider, int status, Bundle extras) 
      { 

      } 

      } 

     @Override 
     protected boolean isRouteDisplayed() { 
      // TODO Auto-generated method stub 
      return false; 
     } 


     } 

在此先感谢.....

+1

为什么不只是看看这个页面的右下角..并点击**中给出的链接相关** – MKJParekh 2012-04-27 09:09:21

回答

0
  1. 采集GPS位置。
  2. 在地图上绘制一个图标(或一个标记)到GPS位置。
  3. 移动地图,以便当前位置可见。

请告诉哪一步导致问题。

+0

我正面临着将地图移动到当前位置的问题,我正在获取纬度和经度位置现在我编辑了我的最新代码 – 2012-04-27 13:51:02

2

由于这个问题已经在这里超过一年了,所以在Android上显示地图的方法已经改变。

获得您的当前位置(lat &长)后,您只需将此坐标传递给地图标记。

下面是我复制&从Google Maps Android API V2文档粘贴的片段:

private GoogleMap mMap; 
mMap = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap(); 
mMap.addMarker(new MarkerOptions() 
     .position(new LatLng(0, 0)) 
     .title("Hello world")); 

至于如何使用谷歌地图,他们也得到了文档的完整指南。

我粘贴在这里充分的步骤拯救你一条腿的链接:

Google Maps Android API V2 - Getting Started

如果你仔细按照相应的步骤,您应该显示的地图,并显示标志,没有任何问题。

以下是您可能需要注意的一件事:在API控制台中启用Google地图选项时,请确保您启用了谷歌地图Android API V2,并且请确保您'在检索API密钥时选择了正确的证书。

希望这可以帮助你摆脱薄雾。

相关问题