ScheduledExecutorService runner = Executors.newSingleThreadScheduledExecutor();
future = runner.scheduleAtFixedRate(
 new Runnable() {
  @Override
  public void run() {
   // ロケーションマネージャのインスタンスを取得する
   final LocationManager mLocationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
   // 位置情報の更新を受け取るように設定
   mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, // プロバイダ
    0, // 通知のための最小時間間隔
    0, // 通知のための最小距離間隔
    new LocationListener() {
     @Override
     public void onLocationChanged(Location location) {
      Log.d("locationTest", "onLocationChanged");
      mLocationManager.removeUpdates(this);
     }
     @Override
     public void onProviderDisabled(String provider) {}
     @Override
     public void onProviderEnabled(String provider) {}
     @Override
     public void onStatusChanged(String provider, int status, Bundle extras) {}
    });
  }
 }
 , 0, 60, TimeUnit.SECONDS); //0秒後、60秒ごと