Android ApiDemos示例解析(20):App->Alarm->Alarm Service
2012-06-09 09:59
429 查看
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。
相关文章推荐
- Android ApiDemos示例解析(19):App->Alarm->Alarm Controller
- Android ApiDemos示例解析(29):App->Notification->Status Bar
- Android ApiDemos示例解析(36):App->Search->Invoke Search
- Android ApiDemos示例解析(11):App->Activity->Receive Result
- Android ApiDemos示例解析(26):App->Notification->IncomingMessage
- Android ApiDemos示例解析(35):App->Preferences->Advanced preferences
- Android ApiDemos示例解析(12):App->Activity->Redirection
- Android ApiDemos示例解析(13):App->Activity->Reorder Activities
- Android ApiDemos示例解析(15):App->Activity->SetWallpaper
- Android ApiDemos示例解析(17):App->Activity->Translucent Blur
- Android ApiDemos示例解析(24):App->Launcher Shortcuts
- Android ApiDemos示例解析(39):App->Service->Local Service Binding
- Android ApiDemos示例解析(25):App->Menu->Inflate from XML
- Android ApiDemos示例解析(34):App->Preferences->Preferences from code
- Android ApiDemos示例解析(40):App->Service->Local Service Controller
- Android ApiDemos示例解析(45):App->Text-To-Speech
- Android ApiDemos示例解析(9):App->Activity->Persistent State
- Android ApiDemos示例解析(3): App->Activity->Animation
- Android ApiDemos示例解析(28):App->Notification->NotifyWithText
- Android ApiDemos示例解析(14):App->Activity->Save & Restore State