我想在Android中每10秒鐘後定期使用後臺服務獲取當前位置的緯度和經度。獲取當前位置經緯度在android中使用後臺服務
0
A
回答
0
首先,你必須寫一個服務:
public class MyService extends Service {
Timer timer;
Handler yardimci;
public static long TIME = 10000;
private GPSControlService gpsControlService;
@Override
public void onCreate() {
super.onCreate();
gpsControlService = new GPSControlService(this) {
@Override
public void findLocationCompleted(Location location) {
Log.i("Service", location.getLatitude() + " - " + location.getLongitude() + " - " + location.getAccuracy());
}
};
timer = new Timer();
yardimci = new Handler(Looper.getMainLooper());
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
Log.i("Service", "GPS controlled");
gpsControl();
}
}, 0, TIME);
}
private void gpsControl() {
yardimci.post(new Runnable() {
@Override
public void run() {
gpsControlService.run();
}
});
}
@Override
public void onDestroy() {
timer.cancel();
super.onDestroy();
}
@Nullable
@Override
public IBinder onBind(Intent intent) {
return null;
}
}
GPSControlService:
public class GPSControlService {
private GPSModule gpsModule;
public GPSControlService(Service service) {
gpsModule = new GPSModule(service);
}
public void run(){
if (gpsModule.canGetLocation()) {
if (gpsModule.getLocation() != null) {
findLocationCompleted(gpsModule.getLocation());
}
gpsModule.stopUsingGPS();
}
}
public void stop(){
gpsModule.stopUsingGPS();
}
public void findLocationCompleted(Location location){}
}
我需要寫一個GPSModule 當LocationListener的植入,它會找出位置,它發出的位置用getLocation()方法
public Location getLocation() {
// return location
}
0
你可以使用位置監聽器來做到這一點。
private class MyLocationListener implements LocationListener {
public void onLocationChanged(Location location) {
String message = String.format(
"New Location \n Longitude: %1$s \n Latitude: %2$s",
location.getLongitude(), location.getLatitude());
latitude = location.getLatitude();
longitude = location.getLongitude();
Toast.makeText(DirectionActivity.this, message,Toast.LENGTH_LONG).show();
}
public void onStatusChanged(String s, int i, Bundle b) {
Toast.makeText(DirectionActivity.this, "Provider status changed",
Toast.LENGTH_LONG).show();
}
public void onProviderDisabled(String s) {
Toast.makeText(DirectionActivity.this,
"Provider disabled by the user. GPS turned off",
Toast.LENGTH_LONG).show();
}
public void onProviderEnabled(String s) {
Toast.makeText(DirectionActivity.this,
"Provider enabled by the user. GPS turned on",
Toast.LENGTH_LONG).show();
}
}
您可以通過
private static final long MINIMUM_DISTANCE_CHANGE_FOR_UPDATES = 1; // in Meters
private static final long MINIMUM_TIME_BETWEEN_UPDATES = 1000; // in Milliseconds
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, MINIMUM_TIME_BETWEEN_UPDATES,
MINIMUM_DISTANCE_CHANGE_FOR_UPDATES, new MyLocationListener());
0
相關問題
- 1. 獲取當前位置的經緯度
- 2. 如何獲取Android中當前位置的緯度和經度?
- 3. 獲取當前位置經度和緯度在android
- 4. 如何在android中獲取當前位置在後臺服務
- 5. 如何在android中使用後臺服務獲取緯度和經度?
- 6. Android - 如何獲取當前位置(經度和緯度)?
- 7. 如何從android的位置服務獲取緯度和經度
- 8. 使用gps獲取經緯度的當前位置
- 9. 鈦工作室使用後臺服務獲取當前位置?
- 10. 從Android獲取當前位置後臺服務問題
- 11. 無法獲得Android當前位置的緯度和經度
- 12. 當前位置,經度和緯度
- 13. 如何獲得當前位置的經緯度在android系統
- 14. 如何獲取位置的經緯度和從後臺服務更新
- 15. 獲取當前位置的緯度和經度的問題
- 16. 獲取當前位置的經度和緯度
- 17. 如何獲取黑莓當前位置的經度和緯度?
- 18. 如何獲取當前位置(經度和緯度)
- 19. 通過gps獲取當前位置(經度和緯度)
- 20. GPS啓用後獲取用戶當前的經緯度 - Android
- 21. Python燒瓶GoogleMaps獲取用戶當前位置的經緯度
- 22. 在Android中獲取API 23以上的當前位置經緯度
- 23. 獲取用戶當前的經/緯度
- 24. 獲取當前的緯度和經度在android應用程序
- 25. 當嘗試獲取當前位置緯度和經度時獲取異常服務
- 26. android後臺服務獲取位置
- 27. 找到當前位置的經緯度
- 28. 無法獲取HTC探索當前位置的當前緯度和經度?
- 29. 如何獲得當前位置(經度,緯度),而gps關閉使用FusedLocationApi android
- 30. 從後臺服務沒有獲取經緯度
對不起,但哪裏有問題? –
「我想通過後臺服務獲得當前的經度和緯度」----我怎樣才能獲得?這是我的問題 – suman
請做你自己的研究。我相信谷歌充滿了關於這個主題的信息 –