我遇到了尝试安排我的服务经常运行的问题。我已经开始启动我的服务了,但是因为什么原因在计划开始时多次启动服务方式。
public class PPPService extends Service {
public void onStart(Intent intent, int startId) {
//TODO do something useful
Log.v("TEST", "Service started");
// Schedule the alarm!
PendingIntent mAlarmSender = PendingIntent.getService(this, 0, intent, 0);
AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE);
am.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, AlarmManager.INTERVAL_FIFTEEN_MINUTES, mAlarmSender);
this.stopSelf();
}
}
已解决:这是通过创建计划程序而不是自行安排服务计划来解决的。
答案 0 :(得分:0)
您正在PendingIntent中发送您的服务上下文,该上下文将很快与其启动的意图一起被终止。我想这可能是非常不可预测的。尝试获取这样的待处理意图:
mAlarmSender = PendingIntent.getService(getApplicationContext(), 0, new Intent(getApplicationContext(), PPPService.class), 0);