重复AlarmManager如何启动AsyncTask?

2024-04-12

我通常编写这段代码来启动服务AlarmManager.

    intent = new Intent(getActivity(), someservice.class);
    pendingNotificationIntent = PendingIntent.getService(getActivity(), 0, intent, 0);
    alarm = (AlarmManager) getActivity().getSystemService(getActivity().ALARM_SERVICE);
    int interval = 30 * 1000;
    long now = Calendar.getInstance().getTimeInMillis();
    alarm.setRepeating(AlarmManager.RTC_WAKEUP, now, interval, pendingNotificationIntent);

My AsyncTask是我注册的私人课程AlarmManager目的。

我怎样才能打电话给AsyncTask而不是使用服务AlarmManager object?

附言。如果有更好的跑步方式AsyncTask每X秒/分钟,请提出!


根据慕尼黑卡托奇 https://stackoverflow.com/users/1751027/munish-katoch的回复,我有以下具体解决方案。

设置闹钟:

Intent intent = new Intent(context, AlarmReceiver.class);

PendingIntent alarmIntent = PendingIntent.getBroadcast(context, 0, intent, 0);

AlarmManager alarmMgr = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
alarmMgr.setInexactRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, 
  SystemClock.elapsedRealtime() + 5 * 1000, 60 * 1000, alarmIntent);

上面的代码配置了AlarmManagerAlarmReceiver,其定义如下:

public class AlarmReceiver extends WakefulBroadcastReceiver {
  @Override
  public void onReceive(Context context, Intent intent) {  
    new MyAsyncTask.execute();
  }
}

发生警报时AlarmReceiver starts MyAsyncTask.

这里有龙

生命周期问题 https://stackoverflow.com/questions/25174226/is-instantiating-an-asynctask-from-a-wakefulbroadcastreceiver-recommended与实例化相关联AsyncTask from a WakefulBroadcastReceiver,即上述解决方案可以导致MyAsyncTask过早地被杀死。而且,违反了线程规则 https://stackoverflow.com/a/25172977/3664487.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

重复AlarmManager如何启动AsyncTask? 的相关文章

  • 如何在android中实现触摸平滑图像橡皮擦?

    我已经从 API 演示中看到了finturePaint java 我想实现触摸平滑橡皮擦 通过在android中触摸移动来擦除部分图像 FingerPaint 告诉我要实现这个 mPaint setXfermode new PorterDu
  • 如何自定义菜单项的背景颜色?

    我正在尝试定制Toolbar的弹出菜单 现在我无法设置菜单项的背景颜色 我的 styles xml 如下所示
  • AdapterContextMenuInfo 始终为 null

    我尝试通过 android 开发文档中的书来做到这一点 this didn t create a menu i don t know why registerForContextMenu getListView setListAdapter
  • 如何正确释放Android MediaPlayer

    我正在尝试向我的 Android 应用程序添加一个按钮 当点击该按钮时它会播放 MP3 我已经让它工作了 但没有办法释放 mediaPlayer 对象 因此即使在我离开活动后它仍然会继续播放 如果我在react 方法之外初始化MediaPl
  • 按下按钮时应用不同的样式

    有没有办法在按下按钮时将样式应用于按钮 如果我有一种风格样式 xml
  • Android Q:file.mkdirs() 返回 false

    我们有一个应用程序 使用外部存储来存储一些临时文件 图像 二进制数据 该代码已经运行了几年 直到最近才发生重大变化 在 Android Q 上它不起作用 File f new File Environment getExternalStor
  • 通过 WhatsApp 发送消息

    由于我发现了一些较旧的帖子 表明 Whatsapp 不支持此功能 我想知道是否发生了变化 以及是否有办法打开与我通过意图发送的号码进行 Whatsapp 聊天 UPDATE请参阅https faq whatsapp com en andro
  • 以编程方式将文本颜色设置为主要 Android 文本视图

    如何设置我的文本颜色TextView to android textColorPrimary以编程方式 我已经尝试了下面的代码 但它将 textColorPrimary 和 textColorPrimary Inverse 的文本颜色始终设
  • Android 深度链接至 Instagram 应用

    Instagram 已经发布了 iOS 深层链接的 url 方案 但尚未为 Android 创建文档 有没有办法深入链接到 Android 上的 Instagram 应用程序 以转到 Instagram 应用程序中的特定位置 例如 Inst
  • Android Eclipse 上的 Web 服务

    我是 android eclipse java 的新手 事实上这个论坛也是如此 有人遇到过这种情况吗 从用户那里获取输入并通过使用 android eclipse 中的 Web 服务来显示适当的结果 有可用的示例吗 非常感谢 我正在发布教程
  • 为什么是 javascript:history.go(-1);无法在移动设备上工作?

    首先 一些背景 我有一个向用户呈现搜索页面 html 表单 的应用程序 填写标准并单击 搜索 按钮后 结果将显示在标准部分下方 在结果列表中 您可以通过单击将您带到新页面的链接来查看单个结果的详细信息 在详细信息页面中 我添加了一个 返回结
  • Android - AudioRecord类不读取数据,audioData和fftArray返回零

    我是 Android 新手 一直在开发音调分析器应用程序 最低 SDK 8 我读了很多关于如何实现 Audiorecord 类的文章 但我想知道为什么它在我录制时不读取任何数据 我尝试显示 audioData 和 fftArray 的值 但
  • okhttp 获取失败响应

    我已经在我的 android 客户端中实现了 okhttp 来进行网络调用 当我收到失败响应时 我会收到失败代码以及与该代码相关的文本作为消息 但我没有收到服务器发送给我的自定义失败响应 在我实施的代码中的失败响应中 我收到的消息只是 错误
  • Android 2.3 模拟器在更新位置时崩溃

    我正在使用 Eclipse 编写和调试 Android 应用程序 我需要做的事情之一是更新设备的位置 因此我尝试使用模拟器控制窗口中的位置控制面板 在 手动 选项卡上 我选择 十进制 输入有效的纬度和经度 然后单击 发送 不幸的是 接下来发
  • Dagger 2 没有生成我的组件类

    我正在使用 Dagger 2 创建我的依赖注入 几个小时前它还在工作 但现在不再生成组件 这是我创建组件的地方 public class App extends Application CacheComponent mCacheCompon
  • Android 如何将总天数准确更改为年、月、日?

    我正在做一个应用程序 该应用程序与根据给定的生日日期输入获取一个人的年龄有关 为此 我从下面的代码中获取从该日期到当前日期的总天数 String strThatDay 1991 05 10 SimpleDateFormat formatte
  • 插件“Android Bundle Support”不兼容

    大家好 自从上次更新以来 当我启动 android studio 时 我遇到了一个非常奇怪的错误 我有这个错误 插件错误 插件 Android Bundle Support 不兼容 直到构建 AI 195 SNAPSHOT 我在网上找不到任
  • Dagger 2 中“HasFragmentInjector”的实际用法是什么

    我之前已经实现了 dagger2 v2 2 但现在他们也添加了 dagger android 部分 所以我正在用它创建示例项目 我知道旧的方法论 Provide and Modules and 成分等注释 但从 Dagger 2 8 开始
  • 发布的 Android apk 出现错误“包文件未正确签名”

    我最近将我的应用程序上传到 Android 市场 但是由于错误 下载时它拒绝运行 包文件未正确签名 我首先使用 eclipse 发布了数据包 右键单击导出 创建密钥库然后发布 但它拒绝工作 然后我下载了 keytool 和 jarsigne
  • Android 屏幕方向错误

    我使用的是 Android HTC HERO 2 1 版本 我写的活动

随机推荐

  • 拖动未修饰的 JFrame 并调整其大小

    目前 我正在使用以下代码来拖动和移动未装饰的 JFrame private void initialiseGUI Component component
  • 使用不同的行终止符在Python中读取csv文件

    我有一个 CSV 格式的文件 其中分隔符是 ASCII 单位分隔符 行终止符是 ASCII 记录分隔符 显然 由于这些是非打印字符 我只是使用了此处编写它们的标准方法之一 我已经编写了大量读取和写入 CSV 文件的代码 因此我的问题不在于
  • Node.js ws 包上的正确错误处理

    我正在努力将基于 REST 的数据管道替换为基于 Websocket 的数据管道 但我无法找到所有可能出错的地方 该系统是生产系统 因此如果出现故障并且无法恢复 将会发生非常糟糕的情况 这是我到目前为止所得到的 客户端 let server
  • 路径组件应该是“/”

    我正在尝试创建一个FileSystem保存 ext2 文件系统的对象 我的URI似乎无效 给我一个路径组件应该是 运行时错误 我使用的是 Windows 我的项目位于 Eclipse 中 有一个名为 fs 的子目录 用于保存文件系统映像 我
  • 如何将 Zend Framework 2 集成到 Netbeans 7.2 IDE [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Actor 中的 WebSocket.acceptWithActor 和 @Inject()(播放 2.5)

    WebSocket acceptWithActor不使用 Guice 实例化一个新的 Akka actor 在 Play 2 4 中 仍然可以通过导入来为我的 actor 使用注入器play api Play current 片段来自Rea
  • Fortran 中指数函数的 DEXP 或 EXP?

    我有两个非常简短的问题 1 我刚刚读到DEXP is the archaic的形式EXP 这是否意味着不应再使用它 我一直以为DEXP 双精度等于EXP 2 指数函数的范围是多少 它依赖于编译器吗 问题 1 在现代 Fortran 中 最好
  • 如何在magento中添加自定义模块

    您好 我想为页脚创建一个自定义模块 用于显示新闻标题 还没有使用自定义模块 我该怎么做 谁能告诉我创建自定义模块的简单步骤 Thanks 您会发现的最佳资源是 模块创建器扩展 http www magentocommerce com ext
  • 如何在android xml布局中将9个按钮放在3行中?

    我正在尝试制作一个井字游戏 android 版本 我想让所有 9 个按钮根据设备的宽度和高度自动调整大小 并将它们均匀地放在 3 3 网格中 但我现在只能设置它们的尺寸的数字 谁能告诉我如何让他们使用父母的高度和宽度并计算他们的尺寸 另外
  • 静态库 (.a) 和共享库 (.so) 之间的文件格式差异?

    我知道关于共享库和静态库的用例有很多问题 这个问题与此无关 我问的是磁盘上存储的文件格式的差异 为什么问题是 两者之间有什么区别 或者它们完全相同 只是用途不同 我相信它们是不一样的 因为在共享库上运行 nm 需要 D 标志 显然它需要做一
  • 尝试检索 Google 日历活动时 WEB_HOOK 通道不可用

    我正在尝试使用Google 日历的推送通知 https developers google com calendar v3 push 回调端点托管在 Heroku 上 应用程序名称 herokuapp com已在 Search Consol
  • 如何过滤上传对话框中可以看到哪些文件?

    在没有 ActiveXes Flash 或 Java Applet JavaScript 也可以 等客户端对象的 ASP NET MVC 应用程序中 是否可以想象当弹出上传文件对话框时 它只会显示我指定的文件 例如 在用于选择要上传的文件的
  • 如何在 django 中创建新的数据库连接

    我需要创建一个新的数据库连接 会话 以避免 django 事务中的 MySql 过程意外提交 如何在django中设置它 我尝试在设置文件中复制数据库配置 它对我有用 但似乎不是一个好的解决方案 有关更多详细信息 请参阅我的代码 class
  • javascript - 捕获语法错误并运行备用函数

    我正在尝试在 javascript 上构建一些东西 我可以有一个可以是一切的输入 像字符串 xml javascript 和 不带引号的非 JavaScript 字符串 如下 strings eval hello I am a string
  • 如何使用 LINQ 从没有主键的表中插入/更新/删除记录

    我正在使用 LINQ 连接到第三者数据库 现在我必须将一些记录插入到没有设置主键的表中 并且出现以下异常 System InvalidOperationException 无法对 表 the table 执行创建 更新或删除操作 因为它没有
  • 如何在不使用 Next() 的情况下获取 sql.Rows 的计数?

    我需要得到的长度 sql Rows before我开始 Next 循环来获取值 一种方法是通过循环 Next 两次来创建行切片 获取计数 然后循环该新切片以提取值 但这似乎效率很低 所以我希望有一种更好的方法做这个 查看文档 我没有看到任何
  • mclapply 遇到取决于核心 id 的错误?

    我有一组基因 我需要并行计算一些系数 系数在里面计算GeneTo GeneCoeffs filtered它将基因名称作为输入并返回 2 个数据框的列表 长度为 100gene array我使用不同数量的核心运行此命令 5 6 和 7 Coe
  • 从字符串中获取“$#”的所有正则表达式匹配项

    我有一个字符串 其中包含多个美元符号实例 后跟一个正数 我需要使用正则表达式获取每个实例 这是一个字符串的示例 This that 1 who 2 到目前为止 我使用 vb net 得到的结果如下 Dim wordSplitMatches
  • npm ci 命令失败并显示“无法读取未定义的属性‘@angular/animations’”

    在为我的 Angular 项目执行 docker build 时 在npm ci步骤 我收到以下错误 Cannot read property angular animations of undefined 由于没有正确的错误 我们无法找到
  • 重复AlarmManager如何启动AsyncTask?

    我通常编写这段代码来启动服务AlarmManager intent new Intent getActivity someservice class pendingNotificationIntent PendingIntent getSe