0

我想在我的应用程序中实现类似 twitter 的功能,因为当您第一次登录时,您从服务器获取数据并将其显示在 listview 中,但是如果您再次打开应用程序而不注销,我不希望应用程序请求再次服务器以获取相同的数据,所以我的问题是在哪里存储先前获取的数据,因此应用程序不会再次请求服务器并获取新数据我已经实现了可刷新的列表视图,因此用户将通过刷新列表来获取新数据.

还有一件事是刷新后我想将新数据存储到保存以前数据的同一个地方,我只想存储 20 个项目以防止内存溢出。请帮助某人。

我有一个arraylist ArrayList> fetch,我在从服务器获取数据时存储数据。

4

1 回答 1

0

服务器必须以 JSON 或 XML 格式返回信息,只需将其放入共享首选项中,然后根据一些内部标志检索/显示。

例如,这是一个在共享首选项中存储内容的示例代码:

private void writeStrToPreferences(String strKey, String str){
        if(strKey == null) return;
        if(str == null) return;
        if(str.length() <= 0) return;

        SharedPreferences.Editor ed = getSharedPreferences(strKey, 0).edit();
        ed.putString(strKey, str);
        ed.commit();
    }

回读也将是相似和简单的

private String readStrFromPreferences(String strKey){
        if(strKey == null)return "NA";
        if(strKey.length() <= 0) return "NA";
        return getSharedPreferences(strKey, 0).getString(strKey, "NA");
    }

有关更多信息,请在此处查看文档:http: //developer.android.com/reference/android/content/SharedPreferences.html

于 2013-10-09T15:24:37.363 回答