一、设定闹钟要注意的问题

public void updateAlarmSetting(MemoDAO dao) {    MemoTime time = dao.updateSetTimes();  AlarmManager alarmManager = (AlarmManager) context    .getSystemService(Context.ALARM_SERVICE);    Intent intent = new Intent(context,ScheduleService.class);       if (time == null) {// 取消闹钟     PendingIntent pendingIntent = PendingIntent.getService(context,     ALARM_CODE, intent, PendingIntent.FLAG_CANCEL_CURRENT);   alarmManager.cancel(pendingIntent);  } else {// 设置新闹钟,覆盖旧的设置   intent.putExtra(MemoTime.Field.MemoId, time.getMemoId());      intent.putExtra(MemoTime.Field.Id, time.getId());   PendingIntent pendingIntent = PendingIntent.getService(context,     ALARM_CODE, intent, PendingIntent.FLAG_UPDATE_CURRENT);   alarmManager.set(AlarmManager.RTC_WAKEUP, time.getTime(),     pendingIntent);  } }

用来接收闹钟的Receiver或Service必须设为:remote或者:xxx模式

<service            android:name="com.fullteem.time.manage.ScheduleService"            android:enabled="true"            android:process=":remote" >        </service>

二、关屏时屏幕的唤醒及音乐播放

在OnResume中唤醒屏幕,并在OnResume最后再初始化MediaPlayer,如果在唤醒之前初始化闹钟,则闹钟可能不响,只会触发界面

@Overrideprotected void onResume() {mWakeLock.acquire();// 这里唤醒锁,用这种方式要记得在适当的地方关闭锁,super.onResume();initPlayer();}



更多相关文章

  1. Android屏幕切换效果实现
  2. android kernel 初始化 2
  3. Android 获得手机屏幕真实的宽高
  4. Android获取准确屏幕尺寸
  5. Android闹钟服务AlarmManager
  6. android 闹钟定时任务 AlarmManager
  7. android获取屏幕的宽度和高度
  8. Android MediaServer初始化流程
  9. android屏幕监听,手机是否处于锁屏状态,在锁屏之上弹出Toast.makeT

随机推荐

  1. 踏出第一步——安装并跑通python程序
  2. 使用python实现人脸检测
  3. python 虚拟机是单线程;当线程执行I/O密集
  4. 使用python如何在列表列表中找到元素,而关
  5. windows下多版本python安装
  6. 在python中创建指数函数。
  7. 你怎么检查python字符串是否只包含数字?
  8. python-selenium-定位一组对象
  9. Python学习记录--关于列表和字典的比较
  10. scikit-learn:在标记化时不要分隔带连字符