0

問題があります。デバイスがオンラインの場合、ウェブサイトのニュースを読むことができます。ライブラリ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);
    }

}
4

1 に答える 1

0

DATA をキャッシュに入れます。URI をキーとして使用します。Android Objects Cacheを見てみましょう

メモリキャッシュ: http://developer.android.com/reference/android/util/LruCache.html

ディスクキャッシュ: https://github.com/JakeWharton/DiskLruCache

于 2013-01-02T04:18:40.260 に答える