我是靠谱客的博主 壮观咖啡,这篇文章主要介绍android定时调用方法,Android – 使用postDelayed()调用定期运行方法,现在分享给大家,希望可以做个参考。

我有一个Android应用程序的情况,我想开始一个应该每秒运行的网络活动(发送一些数据).我实现如下:

在onCreate()中我有代码:

tv = new TextView(this);

tv.postDelayed(sendData, 1000);

sendData()函数:

Handler handler = new Handler();

private Runnable sendData=new Runnable(){

public void run(){

try {

//prepare and send the data here..

handler.removeCallbacks(sendData);

handler.postDelayed(sendData, 1000);

}

catch (Exception e) {

e.printStackTrace();

}

}

};

问题是这样的:当用户按下后退按钮并且应用程序出现(UI消失)时,sendData()函数仍然会被执行,这就是我想要的.现在,当用户重新启动应用程序时,我的onCreate()会再次被调用,并且我每秒都会调用两次sendData().它继续这样下去.每次用户出来并重新开始时,每秒会发生一次sendData().

我究竟做错了什么?是我的新Handler()创建问题吗?处理这个问题的最佳方法是什么?我想要每秒一次sendData()调用,直到用户退出应用程序(表单应用程序管理器).

最后

以上就是壮观咖啡最近收集整理的关于android定时调用方法,Android – 使用postDelayed()调用定期运行方法的全部内容,更多相关android定时调用方法,Android内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部