Операторы связи могут обновлять информацию о своих именах точек доступа (APN) и специфические для оператора параметры конфигурации ( CarrierConfig ) в проекте Android Open Source Project (AOSP).
Учетная запись Google с вашим корпоративным адресом электронной почты
Для обновления информации APN или CarrierConfig необходимо отправить запрос, используя учетную запись Google с действующим корпоративным адресом электронной почты (например, запрос на обновление APN от компании Acme должен поступать с адреса электронной почты типа foobar@acme.com ).
Если у вас нет учетной записи Google, привязанной к корпоративному адресу электронной почты, выйдите из всех учетных записей Gmail в браузере (мы рекомендуем использовать функцию приватного просмотра, например, режим инкогнито, чтобы избежать путаницы с другими учетными записями), а затем создайте учетную запись Google, используя свой корпоративный адрес электронной почты .
Подготовьте локальную среду разработки.
Если вы никогда раньше не отправляли код в AOSP, вам потребуется инициализировать среду сборки, ознакомиться с инструментами и понять, как отправлять патчи:
Кроме того, мы настоятельно рекомендуем использовать систему отслеживания ошибок Google для контроля изменений.
Сообщить об ошибке
- Перейдите на сайт issuetracker.google.com и войдите в систему, используя свой корпоративный адрес электронной почты (см. раздел «Учетная запись Google с корпоративным адресом электронной почты »).
- После входа в систему нажмите кнопку «Создать заявку» в левой части экрана.
- В разделе «Компоненты» выберите Android Public Tracker > Framework.
- Перейдите к обновлению APN или CarrierConfig (в зависимости от ситуации), чтобы ввести заголовок и описание.
Ошибка APN
Задайте атрибуты ошибки следующим образом:
Заголовок: Добавить / Изменить / Удалить APN для CarrierXYZ
Описание: Добавьте подробное описание запрашиваемых изменений, включая сами настройки APN.
Ошибка CarrierConfig
Задайте атрибуты ошибки следующим образом:
Заголовок: Изменения конфигурации для CarrierXYZ
Описание: Добавьте подробное описание запрашиваемых изменений.
Отправить изменения
Чтобы внести изменения:
- Укажите, какой файл нужно изменить.
- Внесите изменения в файл.
- Зафиксируйте изменения в локальном репозитории, следуя инструкциям по отправке патчей и обращая внимание на рекомендации по формату сообщения о коммите.
- После того как вы сохраните изменения в своей личной истории, загрузите их в Gerrit, используя команду
repo upload. - После успешной загрузки репозиторий предоставляет URL-адрес новой страницы в Gerrit. Используйте этот URL-адрес для:
- Просмотрите свой патч на сервере проверки.
- Добавить комментарии
- Укажите конкретных рецензентов для вашего патча.
синтаксис APN
Название проекта Android - устройство/пример
Имя файла(ов) - etc/apns-full-conf.xml (Основная ссылка на Git в Google )
Файл содержит настройки APN в формате XML и служит образцом, поэтому его поведение на устройствах Android не изменится.
Типичная конфигурация APN выглядит следующим образом:
<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" />
Тестирование
- Подключите любое устройство Android, на котором у вас есть root-доступ.
- Добавьте параметры в файл /etc/apns-conf.xml.
- Сбросить настройки APN.
- В настройках APN убедитесь, что профили загружены корректно.
- Для каждого профиля проверьте подключение к сети передачи данных, точку доступа Wi-Fi и MMS, чтобы убедиться в их корректной работе.
Сообщение о подтверждении
[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
Образец CL
Пример CL см. в разделе Sample BICS APNs .
Синтаксис CarrierConfig
Название проекта - platform/packages/apps/CarrierConfig
Имя(имена) файла(ов) - assets/carrier_config_
Найдите соответствующий XML-файл(ы) в папке assets по соответствующим кортежам MCC/MNC. Файл содержит объект конфигурации оператора связи в формате XML. Имена атрибутов определены как ключи в CarrierConfigManager , а тип значения (int/string/bool) указан суффиксами.
Типичные атрибуты типа int/string/bool выглядят следующим образом:
<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" />
Сообщение о подтверждении
[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]
Образец CL
Пример CL можно найти в обновленном файле конфигурации оператора связи .
Запросить отзыв
Чтобы запросить отзыв:
- Перейдите по URL-адресу вашего изменения в Gerrit и добавьте android-carrier-config-review@google.com в качестве рецензента.
- Вы также можете добавить свой контакт из Google в список копий (CC) в Gerrit.
- Для отслеживания изменений вы можете изменить ответственного за данную проблему на android-carrier-config-review@google.com .
После того, как отправленное изменение пройдет проверку и подтверждение, Gerrit автоматически объединит его с общедоступным репозиторием. Другие пользователи могут запустить repo sync , чтобы загрузить обновление в свой локальный клиент.