Mobilfunkanbieter-Identifikation

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:

  1. Gruppieren Sie die carrier_config_mccmnc.xml-Dateien eines einzelnen Mobilfunkanbieters. Verwenden Sie carrier_list.textpb als Referenz, um die Informationen zu Mobilfunkanbieter, Mobilfunknetzbetreiber und Mobilfunkanbieter ohne Vertrag einem bestimmten Mobilfunkanbieter zuzuordnen.

  2. Fügen Sie die Konfigurationen in eine einzige Datei zusammen.

  3. 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.

  4. Wenn die Konfiguration für eine MVNO-Mobilfunkanbieter-ID nicht vorhanden ist, holen Sie die Konfiguration mit getCarrierIdFromSimMccMnc über die MNO-Mobilfunkanbieter-ID ab.

  5. Benennen Sie die neue Datei in carrier_config_carrierid_carrierid_carriername.xml um. Dabei muss carrierid einem canonical_id und carriername einem carrier_name in carrier_list.textpb entsprechen.