Mobilfunkanbieter-Identifikation

Geräte mit Android 9 können Informationen zum Abo-Mobilfunkanbieter erkennen, um eine ID und den Namen des Mobilfunkanbieters bereitzustellen. Android führt eine Datenbank mit Mobilfunkanbieter-IDs, die für jeden Mobilfunkanbieter und seine eindeutige Mobilfunkanbieter-ID entsprechende Regeln enthält. Das Android Open Source Project (AOSP) enthält den Inhalt der Datenbank mit den Mobilfunkanbieter-IDs in der Datei carrier_list.textpb. Die Verwendung einer zentralen Datenbank minimiert doppelte Logik in Apps, die Mobilfunkanbieter identifizieren müssen, und schränkt die Offenlegung von Attributen zur Identifizierung von Mobilfunkanbietern ein.

Um die Abdeckung und Korrektheit der Mobilfunkanbieter-Identifizierung zu verbessern, unterstützt Android außerplanmäßige und Mobilfunkanbieter-ID-Tabellen-Updates. Jedes Update hat eine Versionsnummer und wird in AOSP veröffentlicht.

Implementierung

Wenn Sie außerplanmäßige Updates implementieren möchten, können Sie die Binärdatei carrier_list.pb aus AOSP herunterladen. Wenn Sie die Tabelle im lesbaren Format benötigen, laden Sie carrier_list.textpb herunter.

Platzieren Sie die Mobilfunkanbieter-ID-Tabelle in der Datenpartition /data/misc/carrierid/ des Geräts. Wenn die Tabelle mit den Mobilfunkanbieter-IDs neuer als die vorhandene Version ist, speichert das Gerät die Tabelle in der „CarrierId“-Datenbankklasse. Die neuesten Informationen aus der Mobilfunkanbieter-ID-Datenbank werden mithilfe der öffentlichen Methoden getSimCarrierId() und getSimCarrierIdName() abgerufen.

Mobilfunkanbieter-ID-Informationen zur Datenbank hinzufügen

Wenn Sie der Datenbank eine neue oder aktualisierte Mobilfunkanbieter-ID hinzufügen möchten, beantragen Sie dies über das Formular „Carrier identification information“.

Ihr Antrag wird dann geprüft. Wenn er genehmigt wird, werden die Informationen in die AOSP-Codebasis in carrier_list.pb eingepflegt. Sie können die aktualisierte Liste dann kopieren und in Ihren Build einfügen.

Mobilfunkanbieter-IDs in die Mobilfunkanbieterkonfiguration einbinden

Ab Android 10 unterstützt die Mobilfunkanbieter-Konfiguration die Verwendung von Mobilfunkanbieter-IDs als Schlüssel zum Abrufen mobilfunkanbieterspezifischer Konfigurationen aus CarrierService.

Die Integration von Mobilfunkanbieter-IDs in CarrierConfig bietet folgende Vorteile:

  • Alle MCC-/MNC-Paare für jeden Mobilfunkanbieter werden an einem zentralen Ort zusammengeführt. Dabei werden doppelte oder inkonsistente Daten entfernt.
  • Für jeden Mobilfunkanbieter wird eine kanonische Kennung erstellt und Unklarheiten werden beseitigt.
  • Mobilfunkdiscounter (MVNOs) können eigene IDs zugewiesen werden und existieren nicht mehr nur als Konfigurationen als Teil eines Mobilfunkbetreibers (MNO).

Konfigurationsdaten zu Mobilfunkanbieter-IDs migrieren

So migrieren Sie Konfigurationsdaten von MCC/MNC-Paaren zu Carrier-IDs:

  1. Fassen Sie die carrier_config_mccmnc.xml-Dateien eines einzelnen Mobilfunkanbieters in einer Gruppe zusammen. Verwenden Sie carrier_list.textpb als Referenz, um die MCC-, MNC- und MVNO-Informationen einem bestimmten Mobilfunkanbieter zuzuordnen.

  2. Führen Sie die Konfigurationen in einer einzigen Datei zusammen.

  3. Optional: Daten von Mobilfunkanbietern erben MVNOs erben Konfigurationen von MNOs in der alten carrier_config_mccmnc.xml-Datei. Da alle Mobilfunkanbieter, einschließlich MVNOs, dank der Mobilfunkanbieter-IDs eine eigene Konfigurationsdatei haben können, wird empfohlen, bei der Migration MNO-Daten mit einzubeziehen.

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

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