离线时从Jsoup connect获取数据缓存

时间:2013-01-02 04:13:01

标签: android jsoup

我有一个问题,当设备在线时,我可以将新闻读到我的网站,我解析使用库jsoup,但是当设备离线时,读取的页面将为空, 我的问题是,当离线时,我仍然可以读取已读取的新闻,是否存储在缓存中,如果存储,我如何获得它? 我的代码是我放入变量DATA的网站上的数据。 感谢。

  

public static String DATA;

private void setData() {
        DATA = "";
        final String URI = ""http://megapolitan.kompas.com/read/2013/01/02/10533531/BMW.Rasyid.Rajasa.Diselimuti.Plastik.Abuabu"";
        new Thread() {
            public void run() {
                try {
                    DATA = new LoadNews().execute(URI).get();
                } catch (Exception e) {
                }
            }
        }.start();
}

private class LoadNews extends AsyncTask<String, Integer, String> {
    private String itemContent;

    protected void onPreExecute() {
        super.onPreExecute();
    }

    protected String doInBackground(String... params) {
        String url = params[0];
        Document doc;
        try {
            doc = Jsoup.connect(url).get();
            Elements element = doc.select("div.isi_berita2011 pt_5");
            itemContent = element.toString();
            return itemContent;
        } catch (IOException e) {
            e.printStackTrace();
        }

        return null;
    }

    protected void onPostExecute(String result) {
        dismissProgressDialog();
        super.onPostExecute(result);
    }

}

1 个答案:

答案 0 :(得分:0)

将您的DATA放入缓存中。使用您的URI作为密钥。 看看Android Objects Cache

内存缓存:http://developer.android.com/reference/android/util/LruCache.html

磁盘缓存:https://github.com/JakeWharton/DiskLruCache