0
在这段代码中,我有一个问题,我不知道如何设置setRecurringAlarm()的上下文。在这个代码示例中,我把这个但我不确定是否正确。在广播接收器中为发生重复警报设置上下文
public class AlarmReceiver extends BroadcastReceiver {
private static final int INTERVAL = 15*1000; // check every 15 seconds
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction() != null) {
if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)) {
Log.v(TAG, "BroadcastReceiver - Received Boot Completed; Set Alarm");
setRecurringAlarm(this);
}else{
Log.v(TAG, "BroadcastReceiver - Received " + intent.getAction());
}
}else{
Log.v(TAG, "BroadcastReceiver - Received AlarmService");
}
}
private void setRecurringAlarm(Context context) {
Intent receiver = new Intent(context, AlarmReceiver.class);
PendingIntent recurringDownload = PendingIntent.getBroadcast(context, 0, receiver, PendingIntent.FLAG_CANCEL_CURRENT);
AlarmManager alarms = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
alarms.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), INTERVAL, recurringDownload);
}
}
OMG大声笑我觉得自己像一个白痴 – Rawr 2012-02-24 22:40:49
看起来像它的工作,哈哈感谢打开我的眼睛:D – Rawr 2012-02-25 01:18:39
@Rawr没有problemo :)顺便说一句'这'不会做,因为'BroadcastReceiver'不是'Context'作为一个“服务”是例如) – IBoS 2012-02-25 01:27:20