APN i CarrierConfig

Operatorzy mogą aktualizować informacje o nazwie punktu dostępu (APN) i ustawienia konfiguracji specyficzne dla operatora ( CarrierConfig ) w projekcie Android Open Source Project (AOSP).

Konto Google z firmowym adresem e-mail

Aby zaktualizować informacje APN lub konfigurację CarrierConfig, musisz przesłać żądanie za pomocą konta Google z aktywnym firmowym adresem e-mail (na przykład prośba o aktualizację APN od firmy Acme powinna pochodzić z adresu e-mail takiego jak foobar@acme.com ).

Jeśli nie masz konta Google powiązanego z Twoim firmowym adresem e-mail, wyloguj się ze wszystkich kont Gmail w przeglądarce (zalecamy korzystanie z funkcji przeglądania prywatnego, np. okna incognito, aby uniknąć pomylenia z innymi kontami), a następnie utwórz konto Google przy użyciu firmowego adresu e-mail .

Przygotuj lokalne środowisko rozwojowe

Jeśli nigdy wcześniej nie przesyłałeś kodu do AOSP, musisz zainicjować środowisko kompilacji, zapoznać się z narzędziami i zrozumieć, jak przesyłać poprawki:

Ponadto zdecydowanie zalecamy korzystanie z narzędzia Google Issue Tracker do śledzenia zmian.

Zgłoś błąd

  1. Przejdź na stronę Issuetracker.google.com i zaloguj się przy użyciu firmowego adresu e-mail (zobacz Konto Google z firmowym adresem e-mail ).
  2. Po zalogowaniu kliknij Utwórz problem po lewej stronie ekranu.
  3. W Komponent wybierz opcję Android Public Tracker > Framework
  4. Przejdź do aktualizacji APN lub aktualizacji CarrierConfig , odpowiednio, aby wprowadzić tytuł i opis.

Błąd APN-a

Ustaw atrybuty błędu w następujący sposób:

Tytuł: Dodaj / Modyfikuj / Usuń APN dla CarrierXYZ

Opis: Dodaj szczegółowy opis żądanych zmian, w tym same ustawienia APN.

Błąd konfiguracji przewoźnika

Ustaw atrybuty błędu w następujący sposób:

Tytuł: Zmiany w konfiguracji dla CarrierXYZ

Opis: Dodaj szczegółowy opis zmian, o które prosisz.

Prześlij zmiany

Aby wprowadzić zmiany:

  1. Określ, który plik chcesz zmienić.
  2. Wprowadź zmiany w pliku.
  3. Zatwierdź zmiany w swoim lokalnym repozytorium, postępując zgodnie z instrukcjami dotyczącymi przesyłania poprawek , zwracając uwagę na wytyczne dotyczące komunikatów zatwierdzeń, w tym zalecany format.
  4. Po zatwierdzeniu zmian w historii osobistej prześlij ją do Gerrita za pomocą polecenia repo upload .
  5. Po pomyślnym przesłaniu repozytorium udostępnia adres URL nowej strony w serwisie Gerrit. Użyj tego adresu URL, aby:
    • Zobacz swoją łatkę na serwerze recenzji
    • Dodaj Komentarze
    • Poproś o konkretnych recenzentów dla swojej poprawki

Składnia APN

Nazwa projektu Android - urządzenie/próbka

Nazwy plików - etc/apns-full-conf.xml ( główny link Google Git )

Plik zawiera ustawienia APN w formacie XML i służy jako przykładowy plik, dzięki czemu nie ma zmian w zachowaniu urządzeń z Androidem.

Typowa konfiguracja APN wygląda następująco:

<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"
/>

Testowanie

  1. Podłącz dowolne urządzenie z Androidem, dla którego masz dostęp do konta root.
  2. Dodaj ustawienia do pliku /etc/apns-conf.xml.
  3. Zresetuj ustawienia APN.
  4. W ustawieniach APN sprawdź, czy profile zostały poprawnie załadowane.
  5. Dla każdego profilu przetestuj łączność danych, hotspot Wi-Fi i MMS, aby upewnić się, że działają poprawnie.

Zatwierdź wiadomość

[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

Próbka CL

Zobacz przykładowe nazwy APN BICS , aby zapoznać się z przykładem CL.

Składnia CarrierConfig

Nazwa projektu - platforma/pakiety/aplikacje/CarrierConfig

Nazwy plików — aktywa/carrier_config_ .xml ( główny link Google Git )

Zidentyfikuj odpowiednie pliki XML w folderze zasobów według odpowiednich krotek MCC/MNC. Plik zawiera obiekt konfiguracyjny przewoźnika w formacie XML. Nazwy atrybutów są zdefiniowane jako klucze w CarrierConfigManager , a typ wartości (int/string/bool) jest wskazywany przez przyrostki.

Typowe atrybuty int/string/bool wyglądają następująco:

<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" />

Zatwierdź wiadomość

[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]

Próbka CL

Zobacz zaktualizowany plik konfiguracyjny operatora, aby zapoznać się z przykładem CL.

Poproś o recenzję

Aby poprosić o recenzję:

  • Przejdź do adresu URL Gerrit swojej zmiany i dodaj android-carrier-config-review@google.com jako recenzenta.
  • Możesz także dodać swój kontakt Google do listy CC w Gerrit.
  • Na potrzeby śledzenia możesz zmienić osobę przypisującą problem na android-carrier-config-review@google.com .

Gdy zgłoszenie przejdzie przez proces przeglądu i weryfikacji, Gerrit automatycznie łączy zmianę z publicznym repozytorium. Inni użytkownicy mogą uruchomić repo sync , aby pobrać aktualizację do swojego klienta lokalnego.