繁体   English   中英

创建一个定期发送HTTP请求的定时器 - Android

[英]Create a Timer to send HTTP request Periodically - Android

我想结束从Android设备到Web服务器的HTTP请求,并定期检查数据库的特定数据(每分钟一次)。 我无法为此实现计时器。

谢谢

public class MyActivity extends Activity {
Timer t ;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    t = new Timer();
    t.schedule(new TimerTask() {

        public void run() {


            //Your code will be here 

        }
      }, 1000);

   }
}

尝试AlarmManager运行Service 我不建议您每分钟发送请求,除非只有在用户手动触发此操作时才会发生。

TimerTask doAsynchronousTask;
final Handler handler = new Handler();
Timer timer = new Timer();

doAsynchronousTask = new TimerTask() {

    @Override
    public void run() {

        handler.post(new Runnable() {
            public void run() {
                 if(isOnline){// check net connection
                  //what u want to do....
                }

            }
        });

    }

};

timer.schedule(doAsynchronousTask, 0, 10000);// execute in every 10 s

最简单的方法是循环一个Handler:

private Handler iSender = new Handler() { 
    @Override
    public void handleMessage(final Message msg) { 
        //Do your code here
        iSender.sendEmptyMessageDelayed(0, 60*1000);
    }
};

要开始循环,请调用以下句子:

    iSender.sendEmptyMessage(0);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM