Ich muss HTTP-Antworten cachen und auf diesem Blogpost basieren Diese Funktionalität ist in ICS integriert. Allerdings muss ich die Versionen 1.6 und höher unterstützen, also wollte ich sehen, ob es bereit ist, Bibliotheken dort zu verwenden, bevor ich nachdenke, was die ICS-Funktionalität rückportieren muss.
Aktualisierung:
Hier ist der Link zu HttpResponseCache , der nur java.net.HttpURLConnection
unterstützt.
Zweites Update:
Nach einigen Nachforschungen sieht es so aus, als ob Apache's HttpClient Caching unterstützt, mit dem Vorbehalt, dass das standardmäßige (in-memory) Backend wahrscheinlich keine gute Idee für speicherbeschränkte Android-Apps ist. Ehcache kann eine gute Option sein, abhängig von seiner Unterstützung für Android.
Ich habe dieses Problem erstellt, indem ich eine umbenannte, abwärtskompatible Version von android.net.http.HttpResponseCache der Kompatibilitätsbibliothek hinzufügen möchte: Ссылка
Google hat das Problem abgelehnt, aber angeboten, mir bei der Erstellung des Backports und der Bibliothek zu helfen. Also ich versuche das zu tun.
Auch der HttpClient-Cache ist vielleicht eine nette Sache. Es funktioniert nicht unter Android, Sie müssen eine kleine Änderung vornehmen und neu kompilieren. Siehe Ссылка
Ich würde jedoch empfehlen, Ссылка zu versuchen - es ist eine neu gepackte (umbenannte) Version von HttpClient und HttpClient- Cache für Android. Es ist ziemlich einfach einzurichten (fügen Sie einfach ein jar und dann ch.boye.httpclientandroidlib. * Statt org.apache.http. *).
Ich benutze die Bibliothek, die candrews zurückportiert hat, und ich freue mich berichten zu können, dass es gut funktioniert Drop-In-Ersatz für vor ICS-Android-Apps, die HttpUrlConnection verwenden. Es ist verfügbar unter Ссылка
Eine weitere nette Sache ist, dass es die gleiche API wie die ICS-Version ist, also können Sie die integrierte Version auf ICS aktivieren und die rückportierte Version von crewrews vor ICS mit sehr wenig Code verwenden.