2013-02-22 207 views
1

我正在使用JellyBean 4.2並在我的設備上進行測試。Google Maps Android API v2和當前位置

如何在點擊myLocationButton時獲取當前位置。

getMYLocation在使用網絡提供程序時返回null。

我正在使用LocationManager獲取當前位置並參考Google文檔 https://developers.google.com/maps/documentation/android/start

此點擊上MyLocatiionButton後沒有帶來任何變化

+0

正在使用設備或模擬器? – Jitendra 2013-02-22 11:36:35

+0

我正在使用Nexus 4 – 2013-02-22 11:44:32

回答

1

基本上你應該做的就是打電話給谷歌方向API接收道路方向座標(許多Latlng點),然後在他們每一個之間畫一條折線。

您可以使用用戶overview_polyline或腿和步驟。

1

你都同意在清單中設置? 此外,您必須啓用位置服務(狀態欄中的gps圖標顯示?)。 設備獲取位置需要一些時間,因此請參閱是否調用onLocationChanged。

+0

我已經設置了文檔中指定的所有權限,並且gps圖標也出現在狀態欄 – 2013-02-22 11:16:27

1

使用此代碼Id它工作。

private LocationManager locationManager; 
private Location location; 
private boolean hasGpsProvider, hasNetwrokProvider; 

    public Location getLocation(Context mContext) { 

     if (locationManager == null) { 
      locationManager = (LocationManager) mContext 
        .getSystemService(Context.LOCATION_SERVICE); 
     } 

     hasGpsProvider = locationManager 
       .isProviderEnabled(LocationManager.GPS_PROVIDER); 
     hasNetwrokProvider = locationManager 
       .isProviderEnabled(LocationManager.NETWORK_PROVIDER); 
     if (hasGpsProvider) { 
      locationManager.requestLocationUpdates(
        LocationManager.GPS_PROVIDER, 0, 100, locationListenerGps); 
      location = locationManager 
        .getLastKnownLocation(LocationManager.GPS_PROVIDER); 
      return location; 
     } 

     if (hasNetwrokProvider) { 
      locationManager.requestLocationUpdates(
        LocationManager.NETWORK_PROVIDER, 0, 100, 
        locationListenerNetwork); 
      location = locationManager 
        .getLastKnownLocation(LocationManager.NETWORK_PROVIDER); 
      return location; 
     } 

     return location; 
    } 

並調用

if (location != null) { 
    lat = location.getLatitude(); 
    lng = location.getLongitude(); 
} 
+0

您是否解決了您的問題? – Jitendra 2013-02-22 11:55:46

+0

稍後會做出更改並通知您 – 2013-02-22 12:11:32

2

你需要一個LocationSource添加到您的地圖片段。請參閱this answer以獲得一個獨立的示例。

+0

感謝spotdog13它工作 – 2013-02-27 18:32:12

相關問題