问题标签 [alarmmanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
735 浏览

java - 如何安排警报以便在每次日期更改时广播意图?

我想安排一个警报,当日期更改时会引发一个意图。

我知道这可以完成这项工作

但是让我感到困惑的是在 triggerAtTime 和间隔中放入什么。它说 System.currentTimeMillis() 时基。

我可能会在任何一天安装该应用程序,因此 TriggerAtTime 应该是那天的午夜,并且从那里开始间隔是 24 小时。

我怎样才能做到这一点。有人可以告诉我在 TriggerAtTime 和间隔中放入所需格式的内容吗?

谢谢

0 投票
1 回答
3698 浏览

android - 创建然后取消使用 AlarmManager 设置的多个警报

我有一个允许用户选择分钟池的应用程序。因此,他们可能会选择 5、15、30 和 50 分钟。然后,使用以下代码同时为每个警报设置一个警报管理器警报(此代码块效果很好):

我希望用户能够清除所有警报并重新开始,即使在设置它们并点击开始之后也是如此。我正在尝试 AlarmManager.cancel 类,但它不起作用。文档说,如果意图与用于设置警报的意图相同,那么它将取消它。所以,我使用这段代码来取消它:

唉,警报不断响起。我通过在 5 秒内放置 10 个不同的警报来进行测试。我让前 3 或 4 个警报响起,然后点击我的取消按钮,但警报不断出现(虽然所有字段都清除在点击内,所以我知道点击监听器正在工作)。

编辑:没关系,我在查看语法时需要更加注意。这一行:intent_ids += "intent_id;"; 不应该在引号中包含变量 intent_id。

0 投票
2 回答
11849 浏览

android - Android 毫秒为一次

我已经阅读了所有文档,似乎没有太多可以真正解释日期功能或缺少的内容。

我正在尝试实现 AlarmManger,它需要以毫秒 (ms) 为单位的触发时间。为了测试,我用了当前时间并增加了 5 秒,这很好。

如果我有日期和时间,我将如何获得那个时间的毫秒。

喜欢“2011 年 3 月 2 日 08:15:00”

我如何把它变成毫秒?

0 投票
1 回答
1811 浏览

android - android远程进程(接收器)迅速死亡

我正在尝试每 60 秒运行一次 CPU 密集型任务。我正在使用带有 PendingIntent 的 AlarmManager,`

AlarmReciever.class 使用一些第三方二进制文件进行了一些密集处理,并且至少需要 12 秒才能完成(当作为单个活动运行进行测试时)。但是当我像 PendingIntent 一样运行时,我看到远程进程在启动后几秒钟内就死掉了。我收到这个错误

在 Logcat 中。它说

但我没有在意图中添加任何额外内容。但将来我想放置一些东西。

有人可以帮助我理解为什么它关闭得这么快,以及只有在完成任务后才能让进程死亡。

清单以这种方式列出

补充一下,我已经尝试过这个答案中提供的解决方案,但仍然没有运气

0 投票
2 回答
148 浏览

java - 在用户指定的时间启动应用程序?

我有一个播放广播电台的应用程序,我现在想集成一个闹钟,以便在闹钟响起时播放广播电台。我一直在研究警报管理器,这似乎是最好的方法。

我的应用程序有一个闹钟按钮,它调用一个对话框来设置闹钟。如果设置了闹钟,我需要让我的应用在指定时间启动。但是,我在这段代码中遇到了问题:

context具体来说,我对需要做什么感到困惑。我看过很多例子,但没有一个能真正详细地解释它。如果有人能对此事有所了解,我将不胜感激。
更多可能有帮助的代码...

这叫我的对话^

这两个都在我的 mainActivity 中。
然后我有一个包含布局的xml文件(如果需要可以提供..只允许用户选择一个时间和复选框,然后保存)
保存按钮有一个onclickListener---它在我的LineupDialog类中扩展了我的NavDialog ,而我的 navdialog 只是扩展了 Dialog。

0 投票
1 回答
16659 浏览

android - Android - 找出一天中的几点

我想使用和alarmManager,它设置一个重复的闹钟,每小时响一次。我知道如何每小时设置一个重复警报,但不知道如何从整点开始实际设置,我需要知道下面“whatTime”变量的这个值。

此外,我希望能够设置一个标志,例如 - 如果白天的时间恰好在 4 到 8 点之间,请执行一些操作,否则不要打扰。
所以我真的需要知道如何找出一天中的时间,谁能告诉我怎么做?非常感谢

0 投票
2 回答
2164 浏览

android - 应用程序被杀死时如何管理alarmManager(Android)

我有一个每 2 分钟触发一次的警报(当手机没有处于睡眠状态时)并更新一个小部件,它工作得很好,但是当应用程序被杀死时,没有任何警报剩余,所以它不再工作了。我能做些什么来管理这个杀戮并在那之后让我的警报继续工作。

如果您需要更多信息,请告诉我。如果你不明白,也告诉我。

谢谢解答!

0 投票
1 回答
1592 浏览

java - 我可以在拔掉电源并进入睡眠状态时唤醒我的 Android 设备吗?

我制作了一个应用程序,允许人们收听收音机并实现了闹钟,这样我就可以在闹钟响起时播放收音机。我正在使用alarmManager 和RTC_wakeup,如果手机已插入或手机没有睡着(哪种方式违背了目的),它似乎工作正常。但是,当手机拔掉电源并进入睡眠状态时,直到我唤醒手机,闹钟才会响起。

有谁知道解决这个问题?

0 投票
1 回答
68 浏览

android - 没有调用 AlarmManagerIntent

我想使用 AlarmManager 来调用 BroadcastReciever:

接收者在清单中声明如下:

但什么都没有发生。如果我使用 ctx.sendBroadcast(StartIntent),则调用意图,所以应该没问题,还是不行?我还检查了 StartTime,它应该没问题,我也尝试了 0(这应该会导致根据文档立即调用 Intent)。

我必须改变什么才能让它工作?

0 投票
1 回答
1606 浏览

java - Android 应用小部件更新问题

这就是我正在处理的事情。

我有一个与我的 Android 应用程序关联的小部件,我想每 10 分钟更新一次(当前使用 AlarmManager),仅当屏幕打开时。如果屏幕关闭,则挂起意图的警报将被取消。一旦屏幕再次打开,我会检查上次更新和当前时间是否相差 10 分钟或更多,如果是,我会发送广播来更新小部件。

发生的事情和问题是挂起的 Intent 的警报可能没有被取消(可能),并且当屏幕关闭时,对挂起的所有警报执行小部件更新。

以下是一些代码片段。

这是接收 SCREEN_ON 广播并在当前时间 - 上次小部件更新 >= 10 分钟时发送小部件更新请求的 BroadcastReceiver。

假设最后一次更新发生在上午 10:00,屏幕关闭了 30 分钟。当屏幕打开时,小部件会立即更新为pendingIntent 存储的所有警报。我希望小部件更新仅在屏幕再次亮起时发生一次。

最初,我了解到当设备从空闲状态唤醒时会触发 AlarmManager.ELAPSED_REALTIME。

我不知道为什么闹钟取消不起作用。其他一切都按预期工作。

顺便说一句,我已经对各种设备上的 10 分钟小部件更新进行了性能测试,这对可用资源一点也不紧张。此外,提供的服务甚至不会出现在 Android 设备的电池使用监视器中。

任何帮助深表感谢。