Android:AlarmManager陷阱

| 在我的闹钟中,我使用以下代码来启用信号:
Intent i = new Intent(AlarmReciever.ACTION_WAKEUP);
i.putExtra(AlarmDao.ID_COLUMN, a.getId());
PendingIntent pendingIntent = PendingIntent.getBroadcast(
                        context, a.getId(), i, PendingIntent.FLAG_CANCEL_CURRENT);      
Calendar cal = a.getNextAlarm();
if(cal!=null){
    AlarmManager alarmManager = (AlarmManager)
                         context.getSystemService(context.ALARM_SERVICE);
    alarmManager.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), pendingIntent);
    if(toast) showToast(context, cal);
}
我的接收器开始服务,播放音乐并显示“关闭”对话框。
context.startService(wakePlayer);
context.startActivity(wakeWindow);
此代码的问题是有时它会失败。我的意思是它不会开始播放音乐并显示对话框。有人遇到过同样的问题吗?     
已邀请:
也许您需要使用WakeLock。请检查以下内容: 如何使Android WakeLock正常工作? AlarmManager和WakeLock Android WakeLock     

要回复问题请先登录注册