アンドロイドで10秒ごとに定期的にバックグラウンドサービスを使用して現在地を取得したいと考えています。現在地を取得するアンドロイドのバックグラウンドサービスを使用して緯度と経度を入力してください
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){}
}
を私はLocationListenerを注入し、それが場所を見つけている場合はGPSModule を記述する必要が、それは場所を送信しますgetLocation()メソッドを使用して
public Location getLocation() {
// return location
}
0
このためにLocation Listenerを使用します。
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
ことで、これを呼び出すことができます。しかし、バッテリーを大幅に消耗するので、そうすることはお勧めしません。
アプリケーションがフォアグラウンドで実行されると、位置情報サービスを使用することを強くお勧めします。
ロケーションリスナーはどのように機能するのでしょうか?
2つのパラメータがあります.1回と
場所を取得するためのその他の最小距離です。時間= 10秒、 距離= 1000メートルとしましょう。ロケーションリスナーは、最小パラメータでロケーションを返します。ユーザーが移動しない場合、位置は10秒で更新されます。ユーザーが10秒間に2000メートル移動すると、1000メートルごとに位置が更新されます。
関連する問題
- 1. 現在地の緯度と経度を取得する
- 2. Python 3.3.5 - 現在地の緯度と経度を取得
- 3. Python Flask GoogleMapsユーザーの現在地を取得する緯度と経度
- 4. アンドロイドの現在の緯度と経度を取得するには
- 5. 現在の緯度と経度を取得するandroid
- 6. ReactJS - クリック時の緯度を取得して入力してください
- 7. 現在の緯度と経度プラス500メートルを取得
- 8. **経度と緯度を見つけてください**モバイルアプリケーションのJscriptを使用
- 9. ユーザーの所在地から緯度と経度を取得するには
- 10. 現在地の緯度と経度の値を1〜2メートルの精度で取得する方法
- 11. Android GoogleApiClientを使用してユーザーの緯度と経度を取得する
- 12. Androidで緯度と経度を取得していない
- 13. 経度と緯度から現地名を取得するには?
- 14. 緯度と経度を入力してAjax Googleマップを表示
- 15. 緯度と経度を使用してタイムゾーンを取得しますか?
- 16. プレースオートコンプリートWebService APIを使用して緯度と経度を取得する
- 17. SASベース:経度と緯度を使用して国を取得する
- 18. freegeoipを使用してシェルから緯度と経度を取得する
- 19. Blackberryで現在地の緯度と経度を取得するにはどうすればよいですか?
- 20. Googleのストリートビューから緯度/経度/緯度/緯度/経度を取得する
- 21. PHPでユーザーのマシンとして経度と緯度を取得
- 22. の取得、ユーザーの現在の緯度/経度
- 23. JavaScriptで経度と緯度を使用して地名を取得する方法
- 24. モバイルで現在の緯度と経度を取得する方法
- 25. C#現在の緯度と経度をasp.netアプリケーションで取得する
- 26. Googleマップから現在の緯度と経度を取得する方法
- 27. 現在の地図の現在のエリア、幅、高さ(緯度と経度に関して)を取得する方法は?
- 28. Googleマップ:地図要素から緯度と経度を取得
- 29. 関数から緯度経度を取得し、私はアドレスから緯度経度を取得するには、このスクリプトを使用していたJavaScript
- 30. sqlite iphoneから緯度と経度を読み取ってください
申し訳ありませんが、質問はどこですか? –
"バックグラウンドサービスを通じて現在の緯度と経度が必要" ----それは私の質問です – suman
あなた自身の研究をしてください。 Googleはこのトピックに関する情報がいっぱいです –