2011-12-19 11 views
8

http応答をキャッシュする必要があり、このblog postに基づいて機能がICSに組み込まれています。しかし、バージョン1.6以降をサポートする必要があるので、ICS機能をバックポートする必要があるかどうかを見る前に、そこでライブラリを使用する準備ができているかどうかを見たいと思っていました。バックポートよりも優れたオプションICS HttpResponseCache

更新:

ここだけjava.net.HttpURLConnectionをサポートしていますHttpResponseCacheへのリンクがあります。

セカンド更新:いくつかの研究の後

は、それがデフォルト(メモリ内の)バックエンドは、おそらくメモリに制約Androidアプリのための良いアイデアではないことを警告し、cachingをサポートしていない、ApacheのHttpClientをように見えます。 Ehcacheは、Androidのサポートによっては良い選択肢かもしれません。

答えて

11

私はandroid.net.http.HttpResponseCacheの名前を変更し、後方互換性のあるバージョンが互換性ライブラリに追加することを要求して、この問題を作成しました:https://code.google.com/p/android/issues/detail?id=23875

は、Googleが問題の減少となりましたが、バックポートを行う際に私を助けるために提供しましたおよびライブラリ。だから私はそれをやろうとしている。

また、HttpClient-Cacheは使いやすいかもしれません。それはAndroid上では動作しませんので、小さな変更を加えて再コンパイルする必要があります。 http://comments.gmane.org/gmane.comp.apache.httpclient.user/501

しかし、私はhttps://code.google.com/p/httpclientandroidlib/を試してみることをお勧めします。これは、Android用のHttpClientとHttpClient-Cacheの再パッケージ化された(名前が変更された)バージョンです。設定が簡単です(ちょうどjarを組み込み、org.apache.http。*の代わりにch.boye.httpclientandroidlib。*を使用してください)。

+0

ありがとうございます!私は4.1でApacheのCachingHttpClientをSQLiteベースのCacheStorageで使用してしまいましたが、以前のことを知っていれば 'httpclientandroidlib'になってしまいました。 –

7

candrewsがバックポートされているライブラリを使用し始めました。これは、HttpUrlConnectionを使用するICS前のAndroidアプリのドロップイン代替としてうまく機能することを報告してうれしく思います。 https://github.com/candrews/HttpResponseCache

もう1つの素晴らしい点は、APIがICSバージョンと同じであることです。ICSに組み込まれたAPIを有効にし、キャンドルのバックポート付きバージョンより前のICSをごくわずかなコードで使用することができます。

+0

私はHttpResponsecacheのいくつかの実用的な例を必死に探しています。あなたが持っているかもしれないコードスニペットを私に見せることができれば、本当に役に立ちます。 – Rasmus

関連する問題