Benutzerdefinierte Chrome-Tabs für Android bieten eine umfassende, sichere und nahtlose Browsernutzung direkt im Netzwerk-Anmeldeablauf für Captive Portals, wie sie beispielsweise in Flughäfen, Hotels und Flugzeugen zu finden sind. Durch die Einbindung des primären Browsers des Nutzers in den Authentifizierungsprozess ermöglichen benutzerdefinierte Chrome-Tabs erweiterte Funktionen wie das automatische Ausfüllen von Anmeldedaten und Zahlungen mit einem Fingertipp, DRM-geschütztes Streaming und eine konsistente Verbindung für Nutzer mit Sicherheitsfunktionen wie VPNs und privatem DNS. Weitere Informationen zu benutzerdefinierten Chrome-Tabs finden Sie in der Übersicht zu benutzerdefinierten Chrome-Tabs für Android.
Vorteile gegenüber der alten WebView
Durch die Einbindung des primären Browsers des Nutzers über benutzerdefinierte Chrome-Tabs werden mehrere funktionale Einschränkungen behoben, die bei alten WebView-basierten Authentifizierungsabläufen für Netzbetreiber auftreten:
- Optimierte Transaktionen:Die Benutzeroberfläche unterstützt das automatische Ausfüllen von Anmeldedaten und gespeicherten Zahlungsinformationen mit einem Fingertipp. So wird die manuelle Dateneingabe während des Anmeldevorgangs reduziert. Siehe Abbildung 1.
- Medienkompatibilität:Die Plattform unterstützt DRM-geschützte Inhalte (z. B. Widevine) und ermöglicht so die Wiedergabe verschlüsselter Videostreams direkt im Portal. Siehe Abbildung 2.
- Unterstützung für Sicherheitskonfigurationen:Benutzerdefinierte Chrome-Tabs sorgen dafür, dass die Portalfunktionen auch auf Geräten mit VPNs oder privatem DNS verfügbar sind. Diese Sicherheitsfunktionen führen häufig dazu, dass Standardbrowser-Weiterleitungen fehlschlagen.
- Konsistente Benutzeroberfläche:Benutzerdefinierte Chrome-Tabs werden direkt in den Systembrowser eingebunden und bieten dieselben funktionalen Tools und UI-Elemente, die auch in einer vollständigen Browsersitzung verfügbar sind.
- Hintergrundpersistenz:Das Portal bleibt im Hintergrund aktiv und dient während der gesamten Verbindungsdauer als dauerhafter Zugriffspunkt.
Abbildung 1 : Manuelle Eingabe (WebView) im Vergleich zum automatischen Ausfüllen (benutzerdefinierte Chrome-Tabs).
Abbildung 2 : Kein Video (WebView) im Vergleich zur Videowiedergabe (benutzerdefinierte Chrome-Tabs).
Erkennung und Verbindungsablauf für benutzerdefinierte Chrome-Tabs
Benutzerdefinierte Chrome-Tabs stellen die Benutzeroberfläche bereit, während die Captive Portal API den intelligenten Ablauf von der Erkennung bis zur Verbindung verwaltet:
- Erkennung:Das Netzwerk wirbt mit der Unterstützung der API über die DHCP-Option 114.
- Interaktion:Das Android-Gerät fragt den API-Endpunkt ab, um eine JSON-Nutzlast mit dem Netzwerkstatus abzurufen.
- Verbindung:Wenn die JSON-Antwort signalisiert, dass benutzerdefinierte Chrome-Tabs verwendet werden sollen, öffnet das System das Portal in einer leistungsstarken Browserumgebung anstelle eines einfachen Systemfensters.
Mit der Captive Portal API können Android-Geräte mithilfe des Felds captive erkennen, ob ein Captive Portal vorhanden ist. Die API bindet andere Felder wie venue-info-url und seconds-remaining in die Android-System-UI ein.
Abbildung 3 : Ablauf von der Erkennung bis zur Verbindung mit der Captive Portal API.
Benutzerdefinierte Chrome-Tabs für Android aktivieren
Um den Ablauf für benutzerdefinierte Chrome-Tabs zu unterstützen, müssen Netzbetreiber die Captive Portal API implementieren und sich über die JSON-Konfiguration anmelden.
Voraussetzungen
Für die Aktivierung von benutzerdefinierten Chrome-Tabs für die Anmeldung bei Captive Portals sind folgende Voraussetzungen erforderlich:
- Gerät mit Android 12 oder höher, das Google Play-System
updates (siehe Mainline) über das Mainline
CaptivePortalLoginModul unterstützt. - Unterstützung für die Captive Portal API (RFC 8908). Weitere Informationen finden Sie unter Captive Portal API unterstützen.
Für benutzerdefinierte Chrome-Tabs für Android aktivieren
Wenn Ihr Netzwerk die Captive Portal API (RFC 8908) bereits unterstützt, fügen Sie dem vorhandenen JSON-Antwortobjekt das folgende Schlüssel-Wert-Paar hinzu, um den Ablauf für benutzerdefinierte Chrome-Tabs zu aktivieren:
| Schlüssel | Wert | Beschreibung |
|---|---|---|
x-android-use-custom-tabs |
361335020 |
Dieser Wert steht für die Versionsnummer des Mainline-Moduls für die Anmeldung bei Captive Portals, das im Januar 2026 veröffentlicht wurde. Auf Geräten mit einem Modulupdate, das dieser Version entspricht oder neuer ist, wird der Anmeldeablauf für benutzerdefinierte Chrome-Tabs verwendet. |
Dieses JSON-Beispielobjekt enthält alle Captive Portal-Attribute, die von Android unterstützt werden:
{
"captive": true,
"user-portal-url": "https://login.example.com",
"venue-info-url": "https://venue.example.com",
"seconds-remaining": 3600,
"x-android-use-custom-tabs": 361335020
}
Folgende JSON-Attribute für Captive Portals sind verfügbar:
captive: Auftruesetzen, wenn eine Authentifizierung erforderlich ist. Auffalsesetzen, wenn der Nutzer bereits online ist.user-portal-url: Die URL der Anmelde- oder Zahlungsseite.venue-info-url: Ein Link zu Ihrer Website mit Informationen (z. B. Flugdetails oder Karten).seconds-remaining: Gibt die verbleibende Zeit in Sekunden an, in der das Gerät voraussichtlich eine Internetverbindung aufrechterhalten wird.x-android-use-custom-tabs: Steuert, ob das Gerät den benutzerdefinierten Tab verwendet, wenn er verfügbar ist.
Captive Portal API unterstützen
Wenn Ihr Netzwerk die Captive Portal API nicht unterstützt, folgen Sie dieser Anleitung, um die Captive Portal API und den Ablauf für benutzerdefinierte Chrome-Tabs zu aktivieren.
Aktualisieren Sie die Konfiguration Ihres DHCP-Servers, um die DHCP-Option 114 einzufügen.
Wert:Geben Sie die vollständige HTTPS-URL der dynamisch generierten JSON-Datei an, die Informationen zum Captive Portal enthält (z. B.
https://api.yourvenue.com/status).Ergebnis:Wenn ein Android-Gerät dem Netzwerk beitritt, fragt es die angegebene API ab, anstatt auf eine Browserweiterleitung zu warten.
Konfigurieren Sie Ihren API-Server so, dass er auf eine HTTP-GET-Anfrage an die angegebene URL mit einer JSON-Datei antwortet, die das Gerät über den aktuellen Status des Portals informiert.
HTTPS-Anforderung:Ihr API-Server muss ein gültiges HTTPS-Zertifikat verwenden.
Sicherheits-Fallback:Wenn das Zertifikat ungültig oder selbstsigniert ist, greift das Gerät auf das alte Verhalten von Captive Portals zurück.
Verhalten bei der Erkennung von Captive Portals auf Android-Geräten
Die Captive Portal API bietet eine zuverlässige Alternative zu Standard-Android-Netzwerktests zur Erkennung von Captive Portals und umgeht so häufige Inkonsistenzen.
Android-Geräte prüfen den Netzwerkzugriff, indem sie gleichzeitig HTTP- und HTTPS-Tests an bestimmte Validierungs-URLs senden. Ein inkonsistenter Testerfolg (z. B. HTTP erfolgreich, aber HTTPS fehlgeschlagen) führt zu einem Zustand teilweiser Konnektivität, der die automatische Anzeige der Anmelde-App verhindern kann.
Die Captive Portal API macht die Erkennung zuverlässiger, indem sie das folgende Erkennungsverhalten verwendet:
- Wenn die API
"captive": truemeldet, erkennt das System, dass sich das Gerät hinter einem Portal befindet, und überspringt die Standardtests, um sofort die Anmelde oberfläche anzuzeigen. - Wenn die API
"captive": falsemeldet, führt das System Standard tests durch. Sowohl HTTP- als auch HTTPS-Tests müssen erfolgreich sein, bevor der vollständige Internetzugriff bestätigt wird.
Feedback
Wenn Sie uns Feedback geben möchten, senden Sie eine E-Mail an android-cct@google.com. Wir können Ihr Feedback verwenden, um unsere Produkte und Funktionen zu entwickeln und zu verbessern.