Übersicht über benutzerdefinierte Android-Tabs

Benutzerdefinierte Tabs sind eine Funktion in Android-Browsern, mit der App-Entwickler eine angepasste Browsernutzung direkt in ihre App einfügen können.

Das Laden von Webinhalten ist seit den Anfängen von Smartphones ein wichtiger Bestandteil mobiler Apps. Ältere Optionen können jedoch für Entwickler eine Herausforderung darstellen. Das Starten des eigentlichen Browsers ist für Nutzer ein schwerwiegender Kontextwechsel, der nicht angepasst werden kann. WebViews unterstützen nicht alle Funktionen der Webplattform, geben keinen Status an den Browser weiter und verursachen zusätzlichen Wartungsaufwand.

Mit benutzerdefinierten Tabs können Nutzer in der App bleiben, während sie im Internet surfen. Das erhöht das Engagement und verringert das Risiko, dass Nutzer die App verlassen. Benutzerdefinierte Tabs werden direkt vom bevorzugten Browser des Nutzers unterstützt und teilen automatisch den Status und die Funktionen, die er bietet. Sie müssen keinen benutzerdefinierten Code schreiben, um Anfragen, Berechtigungen oder Cookie-Speicher zu verwalten.

Was können benutzerdefinierte Tabs?

Wenn Sie einen benutzerdefinierten Tab verwenden, werden Ihre Webinhalte in der Rendering-Engine geladen, die den bevorzugten Browser des Nutzers unterstützt. Alle API- oder Webplattformfunktionen sind dort verfügbar und können in Ihrem benutzerdefinierten Tab verwendet werden. Die Browsersitzung, gespeicherten Passwörter, Zahlungsmethoden und Adressen werden wie gewohnt angezeigt.

Was kann ich auf einem benutzerdefinierten Tab anpassen?

Ziemlich viel! Mit benutzerdefinierten Tabs haben Sie detaillierte Kontrolle über viele Aspekte des Browser-Chromes und der Nutzererfahrung. In Ihrer App starten Sie einen benutzerdefinierten Tab mit einem Intent. Wenn dieser Intent aufgerufen wird, können Sie dem CustomTabIntent eine Reihe von Attributen hinzufügen, um genau die gewünschte Darstellung zu erhalten. Hier sind einige Anpassungen, die Sie hinzufügen können:

  • Benutzerdefinierte Animationen zum Ein- und Ausblenden, die zum Rest Ihrer App passen
  • Symbolleistenfarbe an das Branding Ihrer App anpassen
  • Farbkonsistenz, die in Ihrer App beibehalten werden kann, auch wenn Nutzer zwischen hellem und dunklem Design wechseln
  • Benutzerdefinierte Aktionen und Einträge in der Symbolleiste und den Menüs des Browsers
  • Sie können die Höhe des benutzerdefinierten Tabs festlegen, um beispielsweise Videos zu streamen, während Sie mit Ihrem Webshop interagieren.

Außerdem können Nutzer einen benutzerdefinierten Tab minimieren, um mit der zugrunde liegenden App zu interagieren, und ihn jederzeit wiederherstellen, ohne dass der Fortschritt verloren geht. So haben Nutzer eine Alternative zum Schließen des benutzerdefinierten Tabs und können nahtlos zwischen dem Web und der nativen App wechseln. Die Funktion ist standardmäßig für benutzerdefinierte Tabs aktiviert.

Das ist noch lange nicht alles. Benutzerdefinierte Tabs sind sehr leistungsstark und werden aktiv weiterentwickelt. Jeder Browser muss Unterstützung für diese Funktionen hinzufügen, sobald sie verfügbar sind. Fast alle Browser bieten eine gewisse Unterstützung, aber es ist wichtig zu wissen, was in den Browsern Ihrer Nutzer verfügbar ist und was nicht. In der Tabelle zum Vergleich der Funktionen können Sie schnell nachsehen, welche Funktionen in den verschiedenen beliebten Android-Browsern verfügbar sind.

Sie können das jetzt mit unserem Beispiel auf GitHub testen.

Wann sollte ich benutzerdefinierte Tabs verwenden?

Es gibt nicht nur eine einzige „richtige“ Art, Webinhalte zu laden. In bestimmten Situationen ist WebView die richtige Technologie. Das ist beispielsweise der Fall, wenn Sie ausschließlich eigene Inhalte in Ihrer App hosten oder JavaScript direkt aus Ihrer App einfügen müssen. Wenn Ihre App Nutzer zu URLs außerhalb von Domains weiterleitet, sind benutzerdefinierte Tabs aufgrund des integrierten gemeinsamen Status wahrscheinlich die bessere Wahl. Weitere Vorteile von benutzerdefinierten Tabs:

  1. Sicherheit: In benutzerdefinierten Tabs wird Google Safe Browsing verwendet, um den Nutzer und das Gerät vor gefährlichen Websites zu schützen.
  2. Leistungsoptimierung:
    1. Vorab-Aufwärmen des Browsers im Hintergrund, ohne der Anwendung Ressourcen zu entziehen.
    2. Die Seitenladezeit wird verkürzt, indem URLs spekulativ vorab geladen werden.
  3. Lebenszyklusverwaltung: Apps, die einen benutzerdefinierten Tab starten, werden während der Verwendung des Tabs nicht vom System beendet. Die Bedeutung des benutzerdefinierten Tabs wird auf die Vordergrundebene angehoben.
  4. Gemeinsamer Cookie-Speicher und gemeinsames Berechtigungsmodell, damit Nutzer sich nicht auf Websites anmelden müssen, mit denen sie bereits verbunden sind, oder Berechtigungen noch einmal erteilen müssen, die sie bereits erteilt haben.
  5. Browserfunktionen wie Autofill für das bessere Ausfüllen von Formularen sind sofort verfügbar.
  6. Nutzer können über einen integrierten Zurück-Button zur App zurückkehren.

Benutzerdefinierte Tabs im Vergleich zu vertrauenswürdigen Web-Aktivitäten

Vertrauenswürdige Web-Aktivitäten erweitern das Protokoll für benutzerdefinierte Tabs und bieten die meisten Vorteile. Anstatt eine benutzerdefinierte Benutzeroberfläche bereitzustellen, können Entwickler damit einen Browser-Tab ohne Benutzeroberfläche öffnen. Diese Methode wird für Entwickler empfohlen, die ihre eigene Progressive Web-App im Vollbildmodus in ihrer eigenen Android-App öffnen möchten.

Wo sind benutzerdefinierte Tabs verfügbar?

Benutzerdefinierte Tabs sind eine Funktion, die von Browsern auf der Android-Plattform unterstützt wird. Sie wurde ursprünglich von Chrome in Version 45 eingeführt. Das Protokoll wird von den meisten Android-Browsern unterstützt.

Wir freuen uns über Feedback, Fragen und Vorschläge zu diesem Projekt. Bitte melden Sie Probleme auf crbug.com und stellen Sie Fragen auf Twitter unter @ChromiumDev.

Weitere Informationen

Bei Fragen können Sie sich das Tag chrome-custom-tabs auf Stack Overflow ansehen.