0

異なる期間の 2 つの異なるバックグラウンド コールを処理する単一のタイマーを作成できることを知りたいですか? アプリケーションの現地時間を 30 秒で更新するコードがあります。私が望むのは、他のタイマーを作成するのではなく、同じタイマーで、60秒後に別の関数を呼び出すことです。これが私のコードです

                timer = new Timer();
                timer.schedule(new RemindTask(), 10000,30000);

        class RemindTask extends TimerTask 
        {
            public void run()
                    {

                       runOnUiThread(new Runnable() 
                       {
                             public void run() 
                             {
                                printMessage();// Current time
                             }
                       });
                    }
        }
4

1 に答える 1

0

1つの解決策は次のとおりです。

class RemindTask extends TimerTask 
    {
        public void run()
                {

                   runOnUiThread(new Runnable() 
                   {
                         public void run() 
                         {
                            count++;
                            if(count%120 == 0)
                                 weatherApiCall();

                            printMessage();// Current time
                         }
                   });
                }
    }

count は変数で、TimerTask が実行された回数を知ることができ、1 時間に 1 回 weatherApiCall を呼び出すことができます。

于 2013-03-15T07:26:36.603 に答える