我设法使用AlarmManager
启动并重复服务。但是一旦服务在预定时间开始,我希望它在假设5小时后停止,然后在第二天再次重复相同的事情。
这方面的任何线索?
答案 0 :(得分:0)
AlarmManager.cancel()方法不会停止服务...尝试这样。
当您的服务在服务的onCreate()中启动时()安排一个警报,该警报在5小时后触发广播。所以现在在广播接收器中使用context.stopSerVice()方法停止服务..
答案 1 :(得分:0)
我创建了一个处理程序,在5个小时后停止服务。这对我有用。
private boolean handler = new Handler().postDelayed(new Runnable() {
@Override
public void run() {
stopSelf();
Log.e("DEMO:","Service Stopped");
}
}, 5*60*60*1000);
重复间隔始终为>服务运行时间。
现在,服务将在5小时后停止,AlarmManager
将在24小时后再次启动。
希望它有意义并且是实现它的正确方法。