現在の場所を取得するサービスのアンドロイドの例を使用していますが、うまくいきますが、どのような変更が必要なのか知りたいのですが、特定の時間間隔(例えば、2分ごとなど)で位置を特定することができる。特定の間隔で実行するようにAndroidサービスを変更する
public class YourService extends Service implements LocationListener {
LocationManager mLocationManager;
public IBinder onBind(Intent intent) {
// This won't be a bound service, so simply return null
Log.v("WEAVER_", "Service_OnBind...");
return null;
}
@Override
public void onCreate() {
// This will be called when your Service is created for the first time
// Just do any operations you need in this method.
Log.v("WEAVER_", "Service_OnCreate...");
mLocationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1,
1, this);
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
return super.onStartCommand(intent, flags, startId);
}
@Override
public void onDestroy(){
super.onDestroy();
Log.v("WEAVER_","Service_OnDestroy");
mLocationManager.removeUpdates(this);
mLocationManager = null;
}
@Override
public void onLocationChanged(Location location) {
Log.v("WEAVER_","Service_Location Change");
String msg = "New Latitude: " + location.getLatitude()
+ "New Longitude: " + location.getLongitude();
Toast.makeText(getBaseContext(), msg, Toast.LENGTH_LONG).show();
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
@Override
public void onProviderEnabled(String provider) {
}
@Override
public void onProviderDisabled(String provider) {
}
}