Geräte mit Android 9 können Informationen zum Mobilfunkanbieter des Abos erkennen, um eine ID und einen Namen des Mobilfunkanbieters anzugeben. Android verwaltet eine Datenbank mit Mobilfunkanbieter-IDs mit Abgleichsregeln für jeden Mobilfunkanbieter und seine eindeutige Mobilfunkanbieter-ID. AOSP enthält den Inhalt der Mobilfunkanbieter-ID-Datenbank in der Datei carrier_list.textpb
.
Die einheitliche Datenbank minimiert die doppelte Logik in Apps, in denen Mobilfunkanbieter identifiziert werden müssen, und schränkt die Offenlegung von Attributen ein, die Mobilfunkanbieter identifizieren.
Um die Abdeckung und Genauigkeit der Mobilfunkanbietererkennung zu verbessern, unterstützt Android Out-of-Band- und Tabellenupdates für Mobilfunkanbieter-IDs. Jedes Update hat eine Versionsnummer und wird im AOSP veröffentlicht.
Implementierung
Nutzer, die Out-of-Band-Updates implementieren möchten, können die carrier_list.pb
-Binary 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 Carrier-ID-Datenbank 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.
Ihr Antrag wird geprüft und bei Genehmigung wird die Änderung an die AOSP-Codebasis unter carrier_list.pb
gesendet.
Sie können die aktualisierte Liste dann kopieren und in Ihren benutzerdefinierten Build einfügen.
Mobilfunkanbieter-IDs in CarrierConfig einbinden
Ab Android 10 unterstützt die Mobilfunkanbieterkonfiguration die Verwendung von Mobilfunkanbieter-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ügen Sie die Konfigurationen in eine einzige Datei zusammen.
Optional: Daten von Mobilfunkanbietern übernehmen. MVNOs übernehmen Konfigurationen von Mobilfunkanbietern in der alten
carrier_config_mccmnc.xml
-Datei. Da mit Mobilfunkanbieter-IDs alle Mobilfunkanbieter, einschließlich MVNOs, eine eigene Konfigurationsdatei haben können, wird empfohlen, bei der Migration MNO-Daten anzugeben.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.