gpt4 book ai didi

android - 在单个进程中使用 AsyncTask(或 Timer)更好,还是在单独的进程中使用 Service 更好?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:04:42 28 4
gpt4 key购买 nike

我刚刚读了Android Architecture Tutorial: Developing an App with a Background Service (using IPC) .基本上是

  1. 让服务在单独的进程中运行。
  2. 服务中将发生重复的计时器事件。
  3. 在计时器事件处理程序中,它将执行网络以检索推文,并通知所有附加到它的监听器。监听器通过 IPC 附加到它。

我可以看出这种方法有两个主要特征。

  1. 推文检索操作在单独的进程中运行。
  2. 它一直在运行,即使主要 Activity 已经退出。

但是,如果“It always run”不是我的要求。当我退出主要 Activity 时,我希望一切都停止。

  1. 如果我在主 Activity 中使用 AsyncTask(或 Timer)来执行推文检索操作,会不会更好?一切都将在单个进程中运行。不再使用 Service
  2. 使用 AsyncTask(或 Timer)似乎更简单。我们不再需要处理 IPC。
  3. 或者,使用Service 方法可能更好?我是否缺少服务提供的一些好东西?

最佳答案

使用服务是一种更好的方法,因为它允许您独立于应用程序流程执行轮询。

由于这是一项不需要用户交互的任务,并且必须在后台完成而不会干扰应用程序的主 UI 以及用户正在做的任何事情,因此服务是实现它的理想候选者。

可以将服务与应用程序绑定(bind),这样当主应用程序终止时,它也会关闭该服务。

关于android - 在单个进程中使用 AsyncTask(或 Timer)更好,还是在单独的进程中使用 Service 更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13954926/

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