getLastLocation を呼び出す前に、LocationClient に接続するための 2 分間を与えようとしています。最初はこれを Timer (および TimerTask) で実装しましたが、Timer はスリープモードでは機能しないため、AlarmManager に変換したいと考えています。ただし、AlarmManager が別のクラスを呼び出すことを考えると、これを行う方法について少し混乱していますが、同じクラスにとどまり、2 分間遅延するだけです。
これは、タイマーでどのように見えるかです。
Timer theTimer = new Timer();
theTimer.schedule(new TimerTask() {
@Override
public void run() {
if(checkIfGooglePlay() && checkTime()) {
getPostLocation();
stopSelf();
mLocationClient.disconnect();
}
}
}, TWO_MINUTES);