使用警报管理器
此类提供对系统警报服务的访问。这些允许您安排您的应用程序在将来的某个时间点运行。当警报响起时,Intent
系统会广播已为其注册的警报,如果目标应用程序尚未运行,则会自动启动它。已注册的闹钟在设备处于睡眠状态时会保留(如果在此期间它们响起,可以选择唤醒设备),但如果关闭并重新启动,则会被清除。
用它来启动一个服务
服务是一个应用程序组件,它代表应用程序希望在不与用户交互的情况下执行更长时间运行的操作,或提供功能供其他应用程序使用。
API 演示包括一个警报服务示例(在“应用程序”部分),其中:
演示如何安排导致服务启动的警报。当您想要安排启动长时间运行的操作(例如检索最近的电子邮件)的警报时,这很有用。
特别是,请参阅AlarmService.java以了解使用 AlarmManager 安排稍后唤醒服务的示例,并参阅AlarmService_Service.java以了解如何响应该警报的示例。API Demo 的AndroidManifest.xml包含相关的服务和活动定义:
<service android:name=".app.AlarmService_Service" android:process=":remote" />
<activity android:name=".app.AlarmService" android:label="@string/activity_alarm_service">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.SAMPLE_CODE" />
</intent-filter>
</activity>