Daten schneller laden mit dem HTTP-Client für Android und Java

OkHttp – Android-HTTP-Client-Library
Kommentare

Die meisten Apps benötigen eine Netzwerkverbindung zu externen Services, um auf Daten zugreifen und sie austauschen zu können. Meist wird das mit REST-APIs und einem in der App implementierten HTTP-Client umgesetzt. Die Arbeit deutlich vereinfachen soll dabei die Android HTTP-Client-Library OkHttp.

Der besondere Vorteil der Library: Sie reduziert die nötigen Schritte, um solche Netzwerkverbindungen herzustellen und soll gleichzeitig dazu dienen, Daten schneller zu laden. Ebenso hilft OkHttp dabei, bestehende typische Netzwerkprobleme zu beheben und unternimmt auch bei Verbindungsfehlern neue Versuche, den Request auf einer anderen Route abzuschließen.

Features von OkHttp

Um Daten und Medien austauschen zu können, kommt in modernen Applikationen HTTP beziehungsweise HTTP/2 zum Einsatz. Das effiziente Ausführen des Netzwerkprotokolls ist dabei wichtig, um für einen möglichst schnellen Datenaustausch sorgen zu können und gleichzeitig Bandbreite einzusparen.

Genau hier setzt die HTTP-Client-Library OkHttp an und bringt einige Features mit sich, die automatisch für mehr Effizienz beim Herstellen von Netzwerkverbindungen sorgen sollen. Dazu gehört zum Beispiel Connection Pooling, das die Request-Latenz verringern soll oder das Verkleinern der Download-Größe dank GZIP. Ebenso bietet OkHttp Response Caching, das die Verbindung zum Netzwerk bei wiederholten Requests komplett vermeidet und so für eine bessere Performance sorgt.

Nützlich ist auch, dass die Library automatisch versucht, typische Netzwerkprobleme zu umgehen. So nutzt OkHttp eine alternative Adresse, wenn ein Dienst über mehrere IP-Adressen verfügt und die Verbindung zum Netzwerk beim ersten Versuch misslingt. Außerdem initiiert die HTTP-Client-Library neue Verbindungen über moderne TLS-Features wie SNI oder ALPN und nutzt erst dann den Fallback zu TLS 1.0, wenn der Handshake fehlschlägt.

Installation und Voraussetzungen

Die Nutzung von OkHttp ist einfach: Das Request/Response-API wurde mit „fluent builders and immutability“ designed; außerdem unterstützt es sowohl synchrone Blocking-Calls als auch Async-Calls mit Callbacks. Voraussetzung für die Nutzung ist Android 2.3 oder höher; für Java liegt die Mindestanforderung bei Version 1.7.

Auf der Projektseite finden sich eine Reihe von Beispielen zur Nutzung der Android-HTTP-Client-Library; dort steht auch die aktuelle Version zum Download zur Verfügung. Einige weitere Tipps zur Arbeit mit OkHttp bietet auch ein Tutorial von Valdio Veliu.

Name OkHttp
Hersteller Square, Inc.
Projektwebsite http://square.github.io/okhttp/
GitHub https://github.com/square/okhttp

Aufmacherbild: HTTP word written on wood cube von Shutterstock / Urheberrecht: Fabrik Bilder

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -