再次标记一下 alamr manager的创建
public class AlarmReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
ac01 app = ac01.getApp();
app.btEvent("from AlarmReceiver");
}
}
//添加alarm
private boolean StartAlarm(int id,int hour,int minute)
{
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.add(Calendar.SECOND, 10);
//calendar.add(Calendar.HOUR_OF_DAY, hour);
//calendar.add(Calendar.MINUTE, minute);
/* 指定闹钟设置时间到时要运行CallAlarm.class */
Intent intent = new Intent(NotificationList.this, CallAlarm.class);
/* 创建PendingIntent */
intent.putExtra("id1", id);
PendingIntent sender=PendingIntent.getBroadcast(
NotificationList.this,id, intent,PendingIntent.FLAG_CANCEL_CURRENT);
/* AlarmManager.RTC_WAKEUP设置服务在系统休眠时同样会运行
* 以set()设置的PendingIntent只会运行一次
* */
AlarmManager am;
am = (AlarmManager)getSystemService(ALARM_SERVICE);
am.set(AlarmManager.RTC_WAKEUP,
calendar.getTimeInMillis(),
sender
);
return true;
}
//取消alarm
private boolean CancleAlarm(int ID)
{
Intent intent = new Intent(NotificationList.this, CallAlarm.class);
/* 创建PendingIntent */
PendingIntent pendingIntent=PendingIntent.getBroadcast(
NotificationList.this,ID, intent, 0);
AlarmManager am;
am = (AlarmManager)getSystemService(ALARM_SERVICE);
am.cancel(pendingIntent);
return true;
}
//接收参数
int id1=intent.getIntExtra("id1", 0);
分享到:
相关推荐
Alarm Manager 通过与底层硬件时钟(如RTC)和软件时钟(如Timer)交互,确保闹钟的准确触发。 **2. PendingIntent** PendingIntent 是一种特殊的对象,用于封装一个Intent,以便稍后从其他组件中发送。在Alarm ...
在Android开发中,`ALARM`(Alarm Manager)是一个非常重要的组件,用于安排在未来的某个时间执行特定的任务,比如定时提醒、后台数据同步等。在这个简单的实例中,我们将深入理解`ALARM`的使用方法,并结合提供的源...
在"Scheduler.zip"中的示例代码,可能包括了如何实例化Alarm Manager、创建PendingIntent、设置触发时间和类型以及如何取消定时任务等步骤。通过学习这个示例,开发者可以更好地理解如何在实际项目中实现可靠且高效...
这是什么在网上搜索的结果是,有人描述了如何使用AlarmManager,以便在更改时间或更新软件包时需要将其重置。这里是一个示例代码,用于查找是否发生了此类事件,并且您...参考通过参考下一页中的示例代码来创建此源。
取消闹钟则相对简单,只需要调用`AlarmManager`的`cancel()`方法,传入之前创建的`PendingIntent`: ```java // 取消闹钟 alarmManager.cancel(pendingIntent); ``` 在实际应用中,我们还需要考虑权限问题。在...
通过创建`BroadcastReceiver`、设置和取消闹钟,我们可以构建出功能丰富的定时提醒系统。在实际开发中,要考虑到系统的电源管理策略,合理选择触发类型,以及适当地使用`PendingIntent`。在学习过程中,可以参考`...
在Android开发中,闹钟机制(Alarm Manager)是用于实现定时任务的关键组件。它允许开发者在特定的时间点或按照预设的周期性间隔启动一个Intent服务、广播接收器或者Activity。本文将详细解析如何使用闹钟机制来实现...
2. **闹钟(Alarm)**:设置定时任务,如定时唤醒服务或启动Activity。 3. **桌面小部件(Widget)**:点击小部件时,通过PendingIntent触发相应操作,如打开应用或执行特定功能。 PendingIntent的内部实现依赖于...
- **通知管理器(Notification Manager)**是用于创建和管理通知的系统服务,开发者可以通过它来发布和取消通知。 4. **报警管理器(Alarm Manager)**: - **报警管理器**允许开发者安排在未来某一时刻或周期性...
例如,`setAlarmOne`用于设置一次性闹钟,`setAlarm`用于设置周期性闹钟,`cancelAlarm`用于取消周期性闹钟,`send`用于直接发送通知。 ```java public void setAlarmOne(View view) { // 调用上述代码设置一次性...
确保在不再需要闹钟时取消它,以节省电池。 设置通知则相对简单,可以使用`NotificationCompat.Builder`来构建通知。以下是一个基本示例: 1. **创建`NotificationCompat.Builder`**: 初始化一个`Builder`对象,...
定的时间限制之前取消阻挡所有的连接,您可以在按访问扫描统计对话框中 进行此操作。 - 缓冲区溢出保护。 "缓冲区溢出保护"可以阻止利用缓冲区溢出在计算机上执行代码。此功能 会检测到从堆栈中的数据...
- 在用户主目录下创建或修改`.Java.policy`文件,例如:`C:\Documents and Settings\username` 3. **调整Java控制面板设置:** - 进入“控制面板”->“Java”,选择“常规”选项卡下的“临时Internet文件”->...
1. **工程环境搭建**:首先,在SIMATIC Manager中按照“PCS7-Engineering System V8.0 SP1”(EntryID:68157345)文档指导组态OS的单站、服务器和客户端。 2. **项目访问**:在工程站上使用WinCC Explorer打开OS项目...
它提供了一系列的类与接口,帮助开发者获取设备上的系统信息、控制设备行为以及响应各种事件。这些功能覆盖了诸如设置闹钟、监测电池状态、管理电源、监控设备连接状态等多个方面。接下来,我们将详细探讨该命名空间...
9. **ACCOUNT_MANAGER**:允许应用与账户认证服务交互,创建、管理用户账户。 10. **AUTHENTICATE_ACCOUNTS**:应用可以扮演账户认证系统,为其他应用提供认证服务。 11. **BATTERY_STATS**:应用可以收集电池使用...