APN und CarrierConfig

Mobilfunkanbieter können ihre APN-Informationen (Access Point Name) und ihre anbieterspezifischen Konfigurationseinstellungen (CarrierConfig) im Android Open Source Project (AOSP) aktualisieren.

Google-Konto mit Ihrer geschäftlichen E-Mail-Adresse

Wenn Sie APN-Informationen oder Ihre CarrierConfig aktualisieren möchten, müssen Sie die Anfrage über ein Google-Konto mit einer aktiven Unternehmens-E-Mail-Adresse senden. Eine APN-Aktualisierungsanfrage von Acme Company sollte beispielsweise von einer E-Mail-Adresse wie foobar@acme.com gesendet werden.

Wenn Sie kein Google-Konto haben, das mit Ihrer geschäftlichen E‑Mail-Adresse verknüpft ist, melden Sie sich in Ihrem Browser von allen Gmail-Konten ab. Wir empfehlen, eine Funktion für privates Surfen wie ein Inkognitofenster zu verwenden, um Verwechslungen mit Ihren anderen Konten zu vermeiden. Erstellen Sie dann ein Google-Konto mit Ihrer geschäftlichen E‑Mail-Adresse.

Lokale Entwicklungsumgebung vorbereiten

Wenn Sie noch nie Code an AOSP gesendet haben, müssen Sie Ihre Build-Umgebung initialisieren, sich mit den Tools vertraut machen und wissen, wie Sie Patches einreichen:

Außerdem empfehlen wir Ihnen dringend, Änderungen mit dem Google Issue Tracker zu verfolgen.

Fehler melden

  1. Rufen Sie issuetracker.google.com auf und melden Sie sich mit Ihrer geschäftlichen E‑Mail-Adresse an (siehe Google-Konto mit Ihrer geschäftlichen E‑Mail-Adresse).
  2. Klicken Sie nach der Anmeldung links auf dem Bildschirm auf Create issue (Problem erstellen).
  3. Wählen Sie unter Komponente die Option Android Public Tracker > Framework aus.
  4. Fahren Sie mit der APN-Aktualisierung oder der CarrierConfig-Aktualisierung fort, um den Titel und die Beschreibung einzugeben.

APN-Fehler

Legen Sie die Fehlerattribute so fest:

Titel:APNs für CarrierXYZ hinzufügen/ändern/entfernen

Beschreibung:Fügen Sie eine detaillierte Beschreibung der gewünschten Änderungen hinzu, einschließlich der APN-Einstellungen selbst.

CarrierConfig-Fehler

Legen Sie die Fehlerattribute so fest:

Titel:Konfigurationsänderungen für CarrierXYZ

Beschreibung:Fügen Sie eine detaillierte Beschreibung der Änderungen hinzu, die Sie beantragen.

Änderungen übermitteln

So nehmen Sie Änderungen vor:

  1. Suchen Sie die Datei, die Sie ändern möchten.
  2. Nehmen Sie Änderungen an der Datei vor.
  3. Übernehmen Sie die Änderungen in Ihr lokales Repository. Folgen Sie dazu der Anleitung zum Einreichen von Patches und beachten Sie die Richtlinien für Commit-Nachrichten, einschließlich des empfohlenen Formats.
  4. Nachdem Sie die Änderung in Ihrem persönlichen Verlauf übernommen haben, laden Sie sie mit dem Befehl repo upload in Gerrit hoch.
  5. Nach einem erfolgreichen Upload stellt repo die URL einer neuen Seite in Gerrit bereit. Mit dieser URL können Sie Folgendes tun:
    • Patch auf dem Überprüfungsserver ansehen
    • Kommentare hinzufügen
    • Bestimmte Prüfer für Ihren Patch anfordern

APN-Syntax

Android-Projektname: device/sample

Dateiname(n): etc/apns-full-conf.xml (Google Git-Hauptlink)

Die Datei enthält APN-Einstellungen im XML-Format und dient als Beispieldatei. Das Verhalten von Android-Geräten ändert sich dadurch nicht.

Eine typische APN-Konfiguration sieht so aus:

<apn carrier="CarrierXYZ"
      mcc="123"
      mnc="123"
      apn="carrierxyz"
      type="default,supl,mms,ims,cbs"
      mmsc="http://mms.carrierxyz.com"
      mmsproxy="0.0.0.0"
      mmsport="80"
      bearer_bitmask="4|5|6|7|8|12"
/>

Testen

  1. Verbinden Sie ein beliebiges Android-Gerät, für das Sie Root-Zugriff haben.
  2. Fügen Sie Einstellungen zu /etc/apns-conf.xml hinzu.
  3. APN-Einstellungen zurücksetzen
  4. Prüfen Sie in den APN-Einstellungen, ob die Profile richtig geladen wurden.
  5. Testen Sie für jedes Profil die Datenverbindung, den WLAN-Hotspot und MMS, um sicherzustellen, dass sie richtig funktionieren.

Commit-Nachricht

[Example - "Add CarrierXYZ apns to sample apns"]
Bug: [Issue ID from Google Issue Tracker]
Test: No change to behavior as this is only a sample file

Beispiel-CL

Ein Beispiel für eine CL finden Sie unter BICS-APNs.

CarrierConfig-Syntax

Projektname: platform/packages/apps/CarrierConfig

Dateiname(n): assets/carrier_config_.xml (Google Git-Hauptlink)

Suchen Sie im Ordner „assets“ anhand der entsprechenden MCC-/MNC-Tupel nach den relevanten XML-Dateien. Die Datei enthält das Carrier-Konfigurationsobjekt im XML-Format. Die Attributnamen werden als Schlüssel unter CarrierConfigManager definiert und der Wertetyp (int/string/bool) wird durch die Suffixe angegeben.

Typische Attribute vom Typ „int“, „string“ oder „bool“ sehen so aus:

<int name="vvm_port_number_int" value="5499" />
<string name="vvm_type_string">vvm_type_omtp</string >
<boolean name="vvm_cellular_data_required_bool" value="true" />

Commit-Nachricht

[Example - "Add VVM settings for CarrierXYZ"]

[Example - "Updated <mccmnc> carrier config file to include VVM settings
as defined by CarrierXYZ."]

Bug: [Issue ID from Google Issue Tracker]
Test: [Testing notes]

Beispiel-CL

Beispiel für eine aktualisierte Konfigurationsdatei für Mobilfunkanbieter

Überprüfung beantragen

So beantragen Sie eine Überprüfung:

  • Rufen Sie die Gerrit-URL Ihrer Änderung auf und fügen Sie android-carrier-config-review@google.com als Prüfer hinzu.
  • Sie können Ihren Google-Kontakt auch der CC-Liste in Gerrit hinzufügen.
  • Sie können den Verantwortlichen des Problems zu Tracking-Zwecken in android-carrier-config-review@google.com ändern.

Nachdem ein Beitrag den Überprüfungs- und Bestätigungsprozess durchlaufen hat, führt Gerrit die Änderung automatisch in das öffentliche Repository ein. Andere Nutzer können repo sync ausführen, um das Update in ihren lokalen Client zu übernehmen.