1
我有延伸BroadcastReceiver
一个类,并在这个类的onReceive
方法我有这样的代码之后:如何发送延迟广播接收器x秒
Intent autoBoostIntent = new Intent();
autoBoostIntent.setAction(Values.ACTION_AUTO_BOOST);
context.sendBroadcast(autoBoostIntent);
走秀的purspose再调用同一个广播接收器课程一遍又一遍地与特定的action
。问题是,我想延迟上述过程,因此例如每10秒发送一次广播。这可能吗?
编辑:我希望广播无限循环,无论设备是否唤醒(键盘解锁)。
作为一个setRepeatingAlarm方法的AlarmManager使用+1。 BroadcastReceivers不允许长时间运行(我相信时间限制是10秒)。如果他们跑的时间比这次长,他们将被操作系统杀死。所以处理程序和睡觉线程可能不可靠。此外,在UI线程上使用Thread.sleep()可能会导致您的应用程序无法响应用户。 – cottonBallPaws
'此外,在UI线程上使用Thread.sleep()可能会导致您的应用程序无法响应用户。它会。 :) –
..此外AlarmMAnager不推荐用于短时间间隔。 使用异步任务(带处理程序)而不是延迟。 – auval