java - 长时间运行android后台服务

标签 java android

我有一个应用程序可以启动另一个应用程序。当我的应用程序进入后台时,我希望它在后台每 1 分钟执行一个方法。用户可能会在其他应用程序中呆上几个小时,而我需要尽可能长时间地执行此代码。

在 Android 中执行此操作的最佳方法是什么?

Android 文档说:

" If you need to keep threads running for long periods of time, it is highly recommended you use the various APIs provided by the java.util.concurrent pacakge such as Executor, ThreadPoolExecutor and FutureTask"

这些实用程序有点超出我的能力范围。我还需要后台计时器方面的帮助。

基本上我只想要这个:

(while my app is in background) do:
MyMethod()
Wait(1 minute)

最佳答案

您需要注册到 Alarmmanager 服务并每 1 分钟调用您的接收器。这是一个很好的例子,可以从 Use alarmmanager to schedule events. 开始。

关于java - 长时间运行android后台服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18970482/

相关文章:

java - 获取 child 的名字以及 Firebase 数据库中的值

JAVA Unrecognized Character 第一行第一个字符

java - spring-data-neo4j 有 beforeSave 方法吗?

android - 什么是 armeabi 以及他们为什么使用它?

android进度对话框不显示百分比

java - Android Activity_main.xml "@+id"不工作

Java Lucene NGramTokenizer

java - 如何使用 Jackson API 对序列化和反序列化使用不同的 JSONProperty?

java - ApplicationEventMulticaster 未初始化 - 在通过上下文多播事件之前调用 'refresh'

android - 如何使用 SingleLiveEvent 类将多个命令从 MVVM 发送到 View