【问题标题】:Get data cache from Jsoup connect when offline离线时从 Jsoup 连接获取数据缓存
【发布时间】:2013-01-02 04:13:00
【问题描述】:

我有一个问题,当设备在线时,我可以阅读新闻到我的网站,我解析使用库jsoup,但是当设备离线时,阅读的页面会是空的, 我的问题是离线时我如何仍然可以阅读已经阅读的新闻,它是否存储在缓存中,如果存储了我如何获取它? 我下面的代码是来自我的网站的数据,我将其放入变量 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);
    }

}

【问题讨论】:

  • 我不知道你为什么在 AsyncTask 旁边使用 Thread 是在不同的线程本身上执行的。

标签: android jsoup


【解决方案1】:

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

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

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

【讨论】:

  • 嗨,Akos 感谢您的回复,但我希望您的链接,它只是图像缓存,如果图像我可以,,
  • 你可以将任何对象放入缓存中,它不需要是图像。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-06-14
  • 2013-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多