关于闹钟,帮看看是不是小弟搞错了?

WantD 2014-09-20 09:49:44
小弟是这样想的,先启动一个重复的alarm每隔10秒钟广播一次,

    OnClickListener onclick = new OnClickListener() {

@Override
public void onClick(View v) {
long now = System.currentTimeMillis();
PendingIntent pi = null;

pi = PendingIntent.getBroadcast(AlarmTestActivity.this, 0, new Intent(AlarmTestActivity.this, ActionBroadCast.class), Intent.FLAG_ACTIVITY_NEW_TASK);

am.setRepeating(AlarmManager.RTC_WAKEUP, now,10*1000, pi);
}
};[/code
在boradcase中进行条件判断当minute==15之后,重新设置alarm每隔15分钟响应一次,
[code=java]public class ActionBroadCast extends BroadcastReceiver {

private static int num = 0;
private Context context;
private AsyncTaskMusic atm;

@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
Log.e("ActionBroadCast", "New Message !" + num++);

Calendar cl = Calendar.getInstance();
cl.setTimeInMillis(System.currentTimeMillis());

if(cl.get(Calendar.MINUTE) == 16){
Log.i("时间到了","时间到了");
AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0,intent, PendingIntent.FLAG_CANCEL_CURRENT);
am.setRepeating(AlarmManager.RTC, cl.getTimeInMillis() ,AlarmManager.INTERVAL_FIFTEEN_MINUTES, pendingIntent);

}
}

}


第一次成功之后后就就出问题了
在时间没到之前是正常的10秒钟广播一次,到指定的时间之后就不正常了。日志如下: 注意看时间间隔

09-20 21:45:30.097: E/ActionBroadCast(16767): New Message !0
09-20 21:45:40.067: E/ActionBroadCast(16767): New Message !1
09-20 21:45:50.077: E/ActionBroadCast(16767): New Message !2
09-20 21:46:00.086: E/ActionBroadCast(16767): New Message !3
09-20 21:46:00.086: I/here(16767): here
09-20 21:46:00.106: E/ActionBroadCast(16767): New Message !4
09-20 21:46:00.106: I/here(16767): here
09-20 21:46:00.126: E/ActionBroadCast(16767): New Message !5
09-20 21:46:00.126: I/here(16767): here
09-20 21:46:00.156: E/ActionBroadCast(16767): New Message !6
09-20 21:46:00.156: I/here(16767): here
09-20 21:46:00.176: E/ActionBroadCast(16767): New Message !7
09-20 21:46:00.176: I/here(16767): here
09-20 21:46:00.197: E/ActionBroadCast(16767): New Message !8


...全文
122 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
lionfresh 2014-09-22
  • 打赏
  • 举报
回复
怎么会用到Intent.FLAG_ACTIVITY_NEW_TASK呢,你将这个值改为0试试。

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧