【起航计划 018】2015 起航计划 Android APIDemo的魔鬼步伐 17 App->Alarm->Alarm Service
2016-01-03 19:56
489 查看
Alarm Service和Alarm Controller 例子非常类似,只是Alarm Service是用来Schedule一个Service,而前面的例子是来Schedule一个Broadcast。
前面说过PendingIntent ,可以来描述一个Activity ,Broadcast,或是一个Service。本例是Schedule一个Alarm事件来启动一个Service。这通常用于来执行一个较费时的任务。
关于如果编写一个Service将在后面的有专门的例子来说明,只里不详述。只要知道AlarmService_Service是一个Service就行了。
下面的代码用来Schedule一个多次Alarm事件来启动AlarmService_Service:
取消这个Alarm事件:
代码和Alaram Controller类似,同样的方法也可以Schedule一个Alarm事件来触发一个Activity。
前面说过PendingIntent ,可以来描述一个Activity ,Broadcast,或是一个Service。本例是Schedule一个Alarm事件来启动一个Service。这通常用于来执行一个较费时的任务。
关于如果编写一个Service将在后面的有专门的例子来说明,只里不详述。只要知道AlarmService_Service是一个Service就行了。
下面的代码用来Schedule一个多次Alarm事件来启动AlarmService_Service:
private PendingIntent mAlarmSender; ... // Create an IntentSender that will launch our service, to be scheduled // with the alarm manager. mAlarmSender = PendingIntent.getService(AlarmService.this, 0, new Intent(AlarmService.this, AlarmService_Service.class), 0); ... // We want the alarm to go off 30 seconds from now. long firstTime = SystemClock.elapsedRealtime(); // Schedule the alarm! AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE); am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstTime, 30*1000, mAlarmSender);
取消这个Alarm事件:
// And cancel the alarm. AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE); am.cancel(mAlarmSender);
代码和Alaram Controller类似,同样的方法也可以Schedule一个Alarm事件来触发一个Activity。
相关文章推荐
- 【起航计划 017】2015 起航计划 Android APIDemo的魔鬼步伐 16 App->Alarm->Alarm Controller Alarm事件 PendingIntent Schedule AlarmManager
- 【起航计划 016】2015 起航计划 Android APIDemo的魔鬼步伐 15 App->Activity->Wallpaper 系统壁纸作为当前Activity的背景
- 【起航计划 015】2015 起航计划 Android APIDemo的魔鬼步伐 14 App->Activity->Translucent Blur 模糊背景
- 【Android 界面效果49】RecyclerView高度随Item自适应
- 【Android 界面效果48】Android-RecyclerView-Item点击事件设置
- 【Android 界面效果47】RecyclerView详解
- 【React】 详解下一代开源混合应用框架Reapp
- Android中隐式调用Activity
- 【起航计划 014】2015 起航计划 Android APIDemo的魔鬼步伐 13 App->Activity->Translucent 半透明Activity Theme.Translucent
- 【起航计划 013】2015 起航计划 Android APIDemo的魔鬼步伐 12 App->Activity->SetWallpaper 设置壁纸 WallpaperManager getDrawingCache使用
- 【起航计划 012】2015 起航计划 Android APIDemo的魔鬼步伐 11 App->Activity->Save & Restore State onSaveInstanceState onRestoreInstance
- 【起航计划 011】2015 起航计划 Android APIDemo的魔鬼步伐 10 App->Activity->Reorder Activities 后退栈 Intent FLAG
- 【起航计划 010】2015 起航计划 Android APIDemo的魔鬼步伐 09 App->Activity->Redirection 根据shared preferences是否有值决定是否redirect
- 【起航计划 009】2015 起航计划 Android APIDemo的魔鬼步伐 08 App->Activity->QuickContactsDemo 联系人 ResourceCursorAdapter使用 QuickContactBad
- 【起航计划 008】2015 起航计划 Android APIDemo的魔鬼步伐 07 App->Activity->Persistent State 保存状态 SharedPreferences onPause onResume
- 【起航计划 007】2015 起航计划 Android APIDemo的魔鬼步伐 06 App->Activity->Forwarding Activity启动另外一个Activity finish()方法
- 【起航计划 006】2015 起航计划 Android APIDemo的魔鬼步伐 05 App->Activity->Custom Title 自定义标题栏
- 【起航计划 005】2015 起航计划 Android APIDemo的魔鬼步伐 04 App->Activity->Custom Dialog Dialog形式的Activity,Theme的使用,Shape的使用
- 【起航计划 004】2015 起航计划 Android APIDemo的魔鬼步伐 03 App->Activity->Animation Activity跳转动画 R.anim.×× overridePendingTran
- 【起航计划 003】2015 起航计划 Android APIDemo的魔鬼步伐 02 SimpleAdapter,ListActivity,PackageManager参考