gpt4 book ai didi

android - 异步重复定时任务

转载 作者:行者123 更新时间:2023-11-29 21:56:26 25 4
gpt4 key购买 nike

如何创建一个 AsyncTask 在固定的时间间隔后继续运行。

例如。每 5 分钟从服务器获取数据,并向调用者线程发出通知它已收到数据。我在论坛上搜索但找不到太多。到目前为止我收集到的是

1) UI线程将调用AsyncTask

2) onPrExecute 执行前UI线程访问

3) OnPostExecute 执行后UI线程访问

我不需要向用户显示任何进度更新。此外,任务将在应用程序关闭时销毁。这方面的任何教程都会有帮助

最佳答案

正如评论中的其他建议。那么让我详细说明一下。

不要使用 AsyncTask。仅选择 IntentService。

  1. 创建一个类扩展 IntentService
  2. 使用警报管理器通过特定操作项触发对您自己的服务的 Intent
  3. 定义一个接口(interface),用于通知客户端此服务。
  4. 维护由其客户端提供的这些接口(interface)实现对象的列表。
  5. 在 onHandleIntent(Intent intent) 中通过检查操作识别调用。
  6. 直接在 intentService 上发起数据获取请求,作为使用工作线程工作,最后调用您维护的接口(interface)对象列表的更新委托(delegate)。

  7. 制定让 Activity 注册和注销监听这些更新的方法。

  8. 这实际上是将他们提供的接口(interface)实现添加到您维护的列表中,并在调用取消注册时从中删除。
  9. 确保 Activity 在 onResume 中自行注册并在 onPause 中取消注册。
  10. 要么使用重复警报,要么在单个操作运行结束时再次启动警报。希望对您有所帮助:)

关于android - 异步重复定时任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13115809/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com