0

更新間隔時間に応じて、サーバー データベースからヘルスの詳細に関する値を取得したいと考えています。ユーザーが間隔時間を 10 分に設定した場合、サーバーからの値は 10 分ごとに取得する必要があるとします。春のクォーツのようなものです。Timer と TimerTask を試しましたが、実行するにはイベントが必要です。しかし、私の場合、イベントはありません。それで、どうすればそれを達成できますか?

4

1 に答える 1

1

これを onCreate() メソッドに入れます

Thread timer = new Thread() {
    public void run () {
        for (;;) {
            // do stuff in a separate thread
            uiCallback.sendEmptyMessage(0);
            try {
                Thread.sleep(UPDATE_TIME);
            } catch (InterruptedException e) {

                e.printStackTrace();
            }    
        }
    }
};
timer.start();

次に、コールバックでデータを取得します。

  private Handler uiCallback = new Handler () {
        public void handleMessage (Message msg) {
            //  retrieve the values about health details from server database
         }
    };

ユーザーが間隔を設定するたびに UPDATE_TIME をリセットすることを忘れないでください。

于 2013-02-08T07:43:59.960 に答える