1

我想放心,我这样做是最佳实践方式:
我有一个列表,服务器上的顺序正在改变,因此,我希望每 20-30 秒一次。执行请求以查看订单是否有任何更改。所以,我创建了一个Service绑定到 的ActivityListView以及每 20-30 秒的服务。使用AsyncTask.
我选择使用 a 执行它是Service因为我希望列表不断更新,即使应用程序在后台,AsyncTask也是因为我不希望它在主线程上执行。

这是正确的方法吗?

提前谢谢你,
丹。

4

1 回答 1

1

它会起作用,但你的应用会做很多不必要的工作。这会影响电池寿命。除此之外,根据文档,如果您使用设备无线电,它至少可以保持全功率 20 秒,这对电池也没有好处。您有以下选择:

  1. 使用谷歌云消息。它将允许您仅在确实需要时执行更新。
  2. 如果您不想或不能使用 GCM,请按照本指南优化网络访问。从增加更新间隔开始(至少到 4 分钟)。
于 2013-01-17T15:14:09.303 回答