私はFacebookの壁に誕生日の願いを送るアプリケーションを開発しましたが、同時に私は誰かに願いを送るために設定した人に電話しているとき、願いはFacebookの壁に投稿できませんでした。 まずAlarm Managerを使用しました。 しかし、私はタイマークラスを使用したいとタイマークラスでは、私はメッセージが壁にまたは定義された時刻に投稿されているかどうかをチェックしたい場合は、私はポストを送信するタイマークラスを再スケジュールしたい。 私は、このコードは毎秒後に繰り返している定義された期間に実行されるタイマーを確認する方法はありますか?
private final Timer clockTimer;
private class Task extends TimerTask {
public void run() {
timerHandler.sendEmptyMessage(0);
}
}
private final Handler timerHandler = new Handler() {
public void handleMessage (Message msg) {
// runs in context of the main thread
timerSignal();
}
};
private List<SystemTimerListener> clockListener = new ArrayList<SystemTimerListener>();
public SystemTimerAndroid() {
clockTimer = new Timer();
clockTimer.schedule(new Task(), 1000, 1000);
}
private void timerSignal() {
for(SystemTimerListener listener : clockListener)
listener.onSystemTimeSignal();
}
public void killTimer() {
clockTimer.cancel();
}
@Override
public void addListener(SystemTimerListener listener) {
clockListener.add(listener);
}
はので、私はその後、タイマーを停止し、次の日のために再スケジュールし、それが初めてrunnedかどうかを確認したいタイマークラスのためにこのコードを持っているように... してください助けて。
:そうでない場合、何らかの干渉なしで自動的に一定期間後に確認し、再スケジュールする方法。 –
このリンクの例を参照してください。http://www.java2s.com/Tutorial/Java/0120__Development/SchedulingaTimerTasktoRunRepeatedly.htm – Lucifer