Geräte mit Android 9 können Informationen zum Aboanbieter erkennen, um eine ID und den Namen des Mobilfunkanbieters bereitzustellen. Android hat eine Datenbank für Mobilfunkbetreiber-IDs mit Abgleichsregeln für jeden Mobilfunkanbieter und seiner eindeutigen Betreiber-ID. AOSP enthält den Inhalt der Mobilfunkanbieter-ID-Datenbank in der Datei carrier_list.textpb
.
Die einheitliche Datenbank minimiert doppelte Logik in Anwendungen, die Mobilfunkanbieter identifizieren müssen, und begrenzt die Offenlegung von Attributen, die Mobilfunkanbieter identifizieren.
Um die Abdeckung und Genauigkeit der Mobilfunkanbietererkennung zu verbessern, unterstützt Android Out-of-Band- und Mobilfunkanbieter-ID-Tabellenupdates. Jedes Update hat eine Versionsnummer und wird im AOSP veröffentlicht.
Implementierung
Nutzer, die Out-of-Band-Updates implementieren möchten, können das Binärprogramm carrier_list.pb
von AOSP herunterladen. Das lesbare Format der Tabelle finden Sie unter carrier_list.textpb
.
Platzieren Sie die Tabelle mit der Mobilfunkanbieter-ID in der Datenpartition /data/misc/carrierid/
des Geräts. Wenn die Tabelle mit der Mobilfunkanbieter-ID neuer als die vorhandene Version ist, speichert das Gerät die Tabelle in der Datenbankklasse für Mobilfunkanbieter-IDs.
Die neuesten Informationen aus der ID-Datenbank des Transportunternehmens werden von den öffentlichen Methoden getSimCarrierId()
und getSimCarrierIdName()
abgerufen.
Informationen zur Mobilfunkanbieter-ID in die Datenbank einfügen
Wenn Sie der Datenbank eine Mobilfunkanbieter-ID hinzufügen oder aktualisieren möchten, reichen Sie einen Antrag über das Antragsformular für Mobilfunkanbieter-IDs ein.
Ihre Anfrage wird geprüft. Wenn sie genehmigt wird, wird die Änderung an die AOSP-Codebasis carrier_list.pb
übertragen.
Anschließend können Sie die aktualisierte Liste kopieren und in Ihren benutzerdefinierten Build einbinden.
Mobilfunkanbieter-IDs in CarrierConfig einbinden
Ab Android 10 unterstützt die Konfiguration des Mobilfunkanbieters die Verwendung von Anbieter-IDs als Schlüssel, um anbieterspezifische Konfigurationen von CarrierService
abzurufen.
Die Integration von Mobilfunkanbieter-IDs in CarrierConfig
bietet folgende Vorteile:
- Alle MCC/MNC-Paare für jeden Mobilfunkanbieter werden an einem einzigen Ort zusammengeführt und doppelte oder inkonsistente Daten werden entfernt.
- Erstellt eine kanonische Kennung für jeden Mobilfunkanbieter und beseitigt Unklarheiten.
- Ermöglicht es, Mobilfunkanbieter mit individuellen IDs zu identifizieren, anstatt Konfigurationen als Teil eines Mobilfunkanbieters zu verwenden.
Konfigurationsdaten zu Mobilfunkanbieter-IDs migrieren
So migrieren Sie Konfigurationsdaten von MCC/MNC-Paaren zu Mobilfunkanbieter-IDs:
Gruppieren Sie die
carrier_config_mccmnc.xml
-Dateien eines einzelnen Mobilfunkanbieters. Verwenden Siecarrier_list.textpb
als Referenz, um die Informationen zu Mobilfunkanbieter, Mobilfunknetzbetreiber und Mobilfunkanbieter ohne Vertrag einem bestimmten Mobilfunkanbieter zuzuordnen.Führen Sie die Konfigurationen in einer einzigen Datei zusammen.
Optional: Daten von Mobilfunkanbietern übernehmen. MVNOs übernehmen Konfigurationen von Mobilfunkanbietern in der alten
carrier_config_mccmnc.xml
-Datei. Da Anbieter-IDs es allen Mobilfunkanbietern, einschließlich Mobilfunkdiscountern ermöglichen, eine eigene Konfigurationsdatei zu haben, wird empfohlen, MNO-Daten bei der Migration einzubeziehen.Wenn die Konfiguration für eine MVNO-Mobilfunkanbieter-ID nicht vorhanden ist, holen Sie die Konfiguration mit
getCarrierIdFromSimMccMnc
über die MNO-Mobilfunkanbieter-ID ab.Benennen Sie die neue Datei in
carrier_config_carrierid_carrierid_carriername.xml
um. Dabei muss carrierid einemcanonical_id
und carriername einemcarrier_name
incarrier_list.textpb
entsprechen.