我試圖編寫一個應用程序,它使用用戶當前的位置並計算距離並將其寫入我的列表視圖。android在後臺獲取位置並更新列表視圖
位置不一定非常準確,我只想在刷新列表或在應用程序啓動時獲取新位置,而不是連續。
我的問題是,與GPS全球定位儀需要太長時間才能找到一個位置,我必須更新我的清單很多之前,它顯示正確的距離。
我在考慮實現一個後臺任務,它獲取位置並在找到位置時自動更新列表。這是一個解決方案嗎?
是否有任何選項可以更快地獲得位置,即使它不如gps準確?
我至今在我的位置監聽器:
public class MyLocationListener implements LocationListener {
@Override
public void onLocationChanged(Location location) {
lat = location.getLatitude();
lng = location.getLongitude();
myLoc.setLatitude(lat);
myLoc.setLongitude(lng);
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
@Override
public void onProviderEnabled(String provider) {
}
@Override
public void onProviderDisabled(String provider) {
}
}
在這種方法
我打電話的LocationManager和監聽器和距離創建列表視圖
public void getList(){
locationManager = (LocationManager) getActivity().getSystemService(getActivity().LOCATION_SERVICE);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mLocationListener);
//... creating the list with distance and so on
}
我希望你能給我一些提示,我可以如何實現這一點,我將如上所述工作,或告訴我應該使用什麼。 謝謝:)
您可以使用getLastKnownLocation方法更快地獲取位置。您也可以嘗試從網絡獲取位置。嘗試閱讀位置API的更多細節 – 2014-11-04 14:04:37