我正在为 Android 设计一个电视指南应用程序。它将通过 HTTP:GET 请求访问服务器并通过 XML 提供程序详细信息。
因为数据是动态的,所以我必须不断刷新它。我会将数据存储在像 ArrayList 这样的数据结构中,而不是在 sqlite 数据库中。
我的问题是如何刷新数据。我想每 30 分钟刷新一次数据,但似乎效率不高。
还有什么办法吗?同步适配器在这里有用吗?
我正在为 Android 设计一个电视指南应用程序。它将通过 HTTP:GET 请求访问服务器并通过 XML 提供程序详细信息。
因为数据是动态的,所以我必须不断刷新它。我会将数据存储在像 ArrayList 这样的数据结构中,而不是在 sqlite 数据库中。
我的问题是如何刷新数据。我想每 30 分钟刷新一次数据,但似乎效率不高。
还有什么办法吗?同步适配器在这里有用吗?
您必须使用 Handler 及其 postDelayed 方法使列表的适配器无效,如下所示:
Handler handler = new Handler()
handler.postDelayed( new Runnable()
{
@Override
public void run()
{
// Call Webservice fetchdata and stored into arraylist and notifydataset
adapter.notifyDataSetChanged();
handler.postDelayed( this, 60 * 1000 );
}
}, 60 * 1000 );
这里上面的代码每 1 分钟工作一次。您需要根据您的要求更改时间。