在Android 中取得行動裝置的經緯度
問題:
如何存取使用定位工具查看Android設備的當前緯度和經度?
答案:
利用 LocationManager 類別:
LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE); // Obtain the LocationManager Location location = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER); // Get the last known GPS location double longitude = location.getLongitude(); // Extract longitude double latitude = location.getLatitude(); // Extract latitude
如果沒有可用的目前位置, getLastKnownLocation() 可能傳回 null。若要接收非同步位置更新,請考慮向requestLocationUpdates() 提供LocationListener:
private final LocationListener locationListener = new LocationListener() { @Override public void onLocationChanged(Location location) { longitude = location.getLongitude(); latitude = location.getLatitude(); } }; lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 2000, 10, locationListener);
確保您的應用程式具有使用GPS 的ACCESS_FINE_LOCATION 權限:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
為了提高準確性,您可以考慮新增ACCESS_COARSE_LOCATION 權限並使用getBestProvider() 確定最佳提供者。
以上是如何取得 Android 裝置的緯度和經度?的詳細內容。更多資訊請關注PHP中文網其他相關文章!