我正在使用Intent Service-Myintentservice.java。因为我已经安排了一个警报管理器在指定的时间启动相同的意图服务..当我创建登录时,它会以毫秒为单位连续运行,直到它停止后到达开始时间。
代码:
public class Myintentservice extends IntentService{
@Override
protected void onHandleIntent(Intent intent) {
if(within start and end time){
.....Do the required task....
}
else
{
am1=(AlarmManager)getSystemService(Context.ALARM_SERVICE);
Intent locup=new Intent(this,Myintentservice.class);
locupIntent=PendingIntent.getService(this, 0,locup, PendingIntent.FLAG_UPDATE_CURRENT);
Log.i("locup", "postinginterval-->"+Integer.toString(point));
Log.i("ctalarm", "trigger time-->"+Long.toString(hms.getTimeInMillis()));
am1.setRepeating(AlarmManager.RTC_WAKEUP, hms.getTimeInMillis(), point, locupIntent);
}
}
}
我在onHandleIntent方法中包含了if..else语句。如果开始时间和结束时间介于当前时间IF部分将执行之间,否则转到ELSE部分并在达到开始时间后再次执行..已经通过了开始设置重复闹钟的时间到hms.getTimeInMillis()..
服务在指定时间开始和结束但我的问题是服务或警报管理器是否运行我在上面创建的日志直到达到开始时间?是否有可能停止该服务或警报并在指定时间启动。 ?