Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> Android ApiDemos示例解析(20) App->Alarm->Alarm Service

Android ApiDemos示例解析(20) App->Alarm->Alarm Service

編輯:Android開發教程

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

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。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved