gpt4 book ai didi

java - 如何在android中固定时间后重复任务?

转载 作者:IT老高 更新时间:2023-10-28 20:59:26 26 4
gpt4 key购买 nike

我想在每 5 秒后重复调用一个方法,并且每当我希望停止对该方法的重复调用时,我可以停止或重新开始对该方法的重复调用。

这是我真正想要实现的一些示例代码。请在这方面帮助我,我会非常感谢你。

private int m_interval = 5000; // 5 seconds by default, can be changed later
private Handler m_handler;

@Override
protected void onCreate(Bundle bundle)
{
...
m_handler = new Handler();
}

Runnable m_statusChecker = new Runnable()
{
@Override
public void run() {
updateStatus(); //this function can change value of m_interval.
m_handler.postDelayed(m_statusChecker, m_interval);
}
};

public void startRepeatingTask()
{
m_statusChecker.run();
}

public void stopRepeatingTask()
{
m_handler.removeCallbacks(m_statusChecker);
}

最佳答案

使用此设置重复任务:

//Declare the timer
Timer t = new Timer();
//Set the schedule function and rate
t.scheduleAtFixedRate(new TimerTask() {

@Override
public void run() {
//Called each time when 1000 milliseconds (1 second) (the period parameter)
}

},
//Set how long before to start calling the TimerTask (in milliseconds)
0,
//Set the amount of time between each execution (in milliseconds)
1000);

如果你想取消任务,只需调用 t.cancel() 这里 t 是你的 Timer 对象

您还可以查看您的答案下方的评论,他们提供了有关此方面的简要信息。

关于java - 如何在android中固定时间后重复任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18353689/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com