问题标签 [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 投票
1 回答
298 浏览

android - 关于在Android中获取当前位置的问题

关于获取设备的当前位置,我几乎没有问题。

我相信唯一的方法是使用requestLocationUpdates(....).

  1. 如果我订阅 requestLocationUpdates... 持续时间设置为 1 小时,如果我的手机处于睡眠状态(或者在 1 小时内我重新启动手机),则在 1 小时后,监听器是否仍然工作?

A. 如果是 - 1 小时后,当我获得有关位置的更新时,我想将持续时间更改为 2 小时。有没有办法做到这一点?如果没有,我可以调用removeUpdates,并立即调用 requestLocationUpdates,持续时间为 2 小时吗?

B. 如果否 - 我打算设置一个闹钟在 1 小时后响起,然后在闹钟接收器中调用 removeUpdates 和 requestLocationUpdates。这是正确的策略吗。

0 投票
7 回答
103976 浏览

android - Android:保持后台服务活着(防止进程死亡)

我有一项服务定义为:

本质上,我正在制作一个应用程序,用于在用户睡觉时将他或她的手机/设备放在床上时出于各种原因监控加速度计活动。这是一项长期运行的服务,不得在夜间终止。根据夜间发生的后台应用程序和周期性进程的数量,android 有时会杀死我的进程,从而结束我的服务。例子:

我不想强迫用户在我的应用程序中使用“SleepActivity”或其他一些活动作为前台。我不能让我的服务定期运行,因为它一直在拦截 onSensorChanged。

有小费吗?源代码在这里:http ://code.google.com/p/electricsleep/

0 投票
1 回答
15714 浏览

android - android:使用 AlarmManager 运行后台任务

我正在编写一个需要定期检查服务器是否有新消息并通知用户的应用程序。我已经看到一些使用 AlarmManager 来点击 BroadcastReciever 的示例,这似乎是正确的做法,但我似乎无法让它工作。

谁能告诉我这类事情的分步教程(重复警报会触发某种触发通知的背景代码)?

TIA

0 投票
1 回答
1508 浏览

android - Android AlarmManager 设置功能不起作用?

我想添加一个警报,所以我使用了以下代码:

但这似乎不起作用。(我在模拟器上试过,到时候什么都没有发生——我的类上扩展 BroadcastReceiver 的 onReceive 函数没有被调用)。

这是我在构造函数上初始化 mAlarmManager 的方式(它是私有的,因为这个类是单例的):

知道我做错了什么吗?谢谢!

0 投票
1 回答
8332 浏览

android - 在 Android 警报管理器中设置时间 - 警报立即触发

可能重复:
为什么我的 android 警报管理器会立即触发?

我有这个代码将调用警报通知

但是警报立即响起,它在给定的小时和分钟后等待?我应该在清单文件中添加任何内容吗?

0 投票
1 回答
19539 浏览

android - 识别并取消发送到 AlarmManager 的警报

如果我使用 AlarmManager 来安排警报(应该发送的 PendintIntent),我以后如何识别该警报以取消它?我可以取消我的应用程序安排的所有闹钟吗?

0 投票
1 回答
1288 浏览

android - 我如何以编程方式获得下一次特定设置的警报设置为关闭?

我目前正在通过以下方式设置闹钟..

我似乎没有看到一种AlarmManager方法可以让我get设置闹钟的时间......有没有办法从我的应用程序的其他地方做到这一点?

0 投票
6 回答
13586 浏览

android - onPostExecute 未在 AsyncTask 中调用(处理程序运行时异常)

我有一个AsyncTask获取一些数据,然后用这些新数据更新 UI。几个月来它一直运行良好,但我最近添加了一个功能,当有新数据时显示通知。现在,当我的应用程序通过通知启动时,有时我会收到此异常并且onPostExecute不会被调用。

这是应用程序启动时发生的情况:

1) 展开 UI 并找到视图

2) 取消AlarmManager检查新数据的警报(通过 )并重置警报。(这样如果用户禁用警报,它会在他/她下次重新启动之前被取消。)

3) 启动AsyncTask. 如果应用程序是从通知启动的,请传入一点数据,然后取消通知。

我被困在可能导致此异常的原因上。似乎异常来自AsyncTask代码,所以我不确定如何修复它。

谢谢!

这是一个例外:

编辑:这是我onCreate在主要活动中的方法(通知打开的方法)。onClickListeners为了节省空间,我省略了一些。我认为它们不应该有任何影响,因为它们所连接的按钮没有被按下。

编辑 2:我一直在挖掘 Android 源代码,追踪异常的来源。sendMessageAtTime这是in的第 456 和 457 行Handler

这是enqueueMessage来自MessageQueue

我对是什么有点困惑mQuiting,但看起来上一次enqueueMessage被称为msg.target是空的。

0 投票
3 回答
2971 浏览

android - 用于定期传感器读取的 Android AlarmManager

我的任务是定期读取后端的手机传感器(例如 WiFi、加速度计)。

我目前的解决方案是使用 AlarmManager。

具体来说,我们有:

在“主”程序(一个活动)中,我们使用 PendingIntent.getService:

在“AutoLogging”程序(一项服务)中,我们会定期响应警报:

我的问题是:

当我使用这个报警服务时,每次报警只调用 OnCreate 和 OnStart。

我的问题是:

(1)我们需要调用OnDestroy(或者onBind,onUnbind)吗?

(2)这是使用AlarmManager的正确方法(与“大写接收器”相比)吗?

谢谢!文森特

0 投票
5 回答
71928 浏览

android - Android:获取所有使用 AlarmManager 设置的 PendingIntents

我正在设置这样的警报:

我有兴趣删除之前设置的所有警报,清除它们。

有没有办法让我这样做或获取当前设置的所有警报,以便我可以手动删除它们?