Android 无限在一定时间后调用某个函数
我试过time和timertask、handler和runnables,没有任何东西能让我的函数在特定时间后被调用。请帮我把这个处理掉Android 无限在一定时间后调用某个函数,android,multithreading,sleep,repeat,period,Android,Multithreading,Sleep,Repeat,Period,我试过time和timertask、handler和runnables,没有任何东西能让我的函数在特定时间后被调用。请帮我把这个处理掉 when = System.currentTimeMillis(); t1 = new Timer(); tt = new TimerTask(){@Override public void run(){ systemClick();}}; t1.scheduleAtFixedRate(tt, when+interval, interval); 还有这个: f
when = System.currentTimeMillis();
t1 = new Timer();
tt = new TimerTask(){@Override public void run(){ systemClick();}};
t1.scheduleAtFixedRate(tt, when+interval, interval);
还有这个:
final Handler myHandler = new Handler();
Runnable runnableforadd = new Runnable()
{
public void run()
{
systemClick();
myHandler.postDelayed(this, interval);
}
};
myHandler.postDelayed(runnableforadd, when + interval);
我在onCreate()中执行的第一个和第二个命令systemClick()
实际上一次也不会被调用(我已经在里面放了Toast)。我不太懂线程
systemClick
-是一个函数,系统在其中执行单击我的按钮-myButton。在这里调用performClick()
(以及其他函数)
我怎样才能解决这个问题
谢谢你试过了吗。AlarmManager将在一定时间后帮助您执行代码。您尝试过了吗。AlarmManager将帮助您在特定时间段后执行代码。延迟时间中的值应为您希望方法等待的值。例如,如果您想在等待1分钟后调用您的方法,则传递60000
myHandler.postDelayed(runnableforadd, 60000);
当前,您正在System.currentTimeMillis()的延迟时间中添加“wait”,这意味着您的方法将在大约“13389000000”毫秒后被调用延迟时间中的值应该是您希望方法等待的值。例如,如果您想在等待1分钟后调用您的方法,则传递60000
myHandler.postDelayed(runnableforadd, 60000);
当前,您正在System.currentTimeMillis()的延迟时间中添加“wait”,这意味着您的方法将在大约“13389000000”毫秒后被调用