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:
- Utworzenie środowiska kompilacji
- Zapoznanie się z Gitem i Repo
- Pobieranie źródła
- Przesyłanie poprawek
Ponadto zdecydowanie zalecamy korzystanie z narzędzia Google Issue Tracker do śledzenia zmian.
Zgłoś błąd
- Przejdź na stronę Issuetracker.google.com i zaloguj się przy użyciu firmowego adresu e-mail (zobacz Konto Google z firmowym adresem e-mail ).
- Po zalogowaniu kliknij Utwórz problem po lewej stronie ekranu.
- W Komponent wybierz opcję Android Public Tracker > Framework
- 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:
- Określ, który plik chcesz zmienić.
- Wprowadź zmiany w pliku.
- 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.
- Po zatwierdzeniu zmian w historii osobistej prześlij ją do Gerrita za pomocą polecenia
repo upload
. - 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
- Podłącz dowolne urządzenie z Androidem, dla którego masz dostęp do konta root.
- Dodaj ustawienia do pliku /etc/apns-conf.xml.
- Zresetuj ustawienia APN.
- W ustawieniach APN sprawdź, czy profile zostały poprawnie załadowane.
- 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_
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.