Точка доступа и CarrierConfig

Операторы могут обновлять информацию о названии точки доступа (APN) и настройки конфигурации (CarrierConfig) в Android Open Source Project (AOSP).

аккаунт Google с корпоративным адресом электронной почты;

Чтобы обновить информацию об APN или CarrierConfig, отправьте запрос с аккаунта Google, в котором указан действующий корпоративный адрес электронной почты (например, запрос на обновление APN от компании Acme должен быть отправлен с адреса foobar@acme.com).

Если у вас нет аккаунта Google, связанного с корпоративным адресом электронной почты, выйдите из всех аккаунтов Gmail в браузере (мы рекомендуем использовать режим частного просмотра, например окно инкогнито, чтобы не путать аккаунты) и создайте аккаунт Google с корпоративным адресом электронной почты.

Как подготовить локальную среду разработки

Если вы никогда раньше не отправляли код в AOSP, вам нужно будет инициализировать среду сборки, ознакомиться с инструментами и понять, как отправлять исправления:

Кроме того, мы настоятельно рекомендуем использовать Google Issue Tracker для отслеживания изменений.

Сообщить об ошибке

  1. Перейдите на сайт issuetracker.google.com и войдите в аккаунт, используя корпоративный адрес электронной почты (см. аккаунт Google с корпоративным адресом электронной почты).
  2. Войдя в аккаунт, нажмите Создать проблему в левой части экрана.
  3. В разделе Компонент выберите Android Public Tracker > Framework.
  4. Перейдите к разделу Обновление APN или Обновление CarrierConfig и введите название и описание.

Ошибка точки доступа

Задайте следующие атрибуты ошибки:

Title: Add/Modify/Remove APNs for CarrierXYZ

Описание. Добавьте подробное описание изменений, которые вы хотите внести, включая сами настройки APN.

Ошибка CarrierConfig

Задайте следующие атрибуты ошибки:

Заголовок: изменения конфигурации для CarrierXYZ

Описание. Добавьте подробное описание изменений, которые вы хотите внести.

Сохранить изменения

Чтобы изменить настройки:

  1. Определите, какой файл нужно изменить.
  2. Пользователь может вносить изменения в файл,
  3. Зафиксируйте изменения в локальном репозитории, следуя инструкциям по отправке исправлений. При этом соблюдайте правила в отношении сообщений о фиксации, в том числе рекомендации по формату.
  4. После того как вы зафиксируете изменения в личной истории, загрузите их в Gerrit с помощью команды repo upload.
  5. После успешной загрузки repo предоставляет URL новой страницы в Gerrit. Этот URL можно использовать для следующих целей:
    • Просмотр исправления на сервере проверки
    • Добавьте комментарии
    • Как запросить проверку исправлений у определенных пользователей

Синтаксис точки доступа

Название проекта для Android – device/sample

Названия файлов: etc/apns-full-conf.xml (основная ссылка на Google Git).

Файл содержит настройки APN в формате XML и служит в качестве примера, поэтому поведение устройств Android не изменится.

Типичная конфигурация точки доступа выглядит следующим образом:

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

Тестирование

  1. Подключите любое устройство Android, для которого у вас есть root-доступ.
  2. Добавьте настройки в файл /etc/apns-conf.xml.
  3. Сбросьте настройки точки доступа.
  4. В настройках APN убедитесь, что профили загружены правильно.
  5. Для каждого профиля проверьте, правильно ли работают передача данных, точка доступа 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 можно найти в разделе Примеры APN BICS.

Синтаксис CarrierConfig

Название проекта – platform/packages/apps/CarrierConfig

Названия файлов: assets/carrier_config_.xml (основная ссылка Google Git).

Найдите в папке assets нужные XML-файлы по соответствующим кортежам 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 в список получателей копии в Gerrit.
  • Чтобы отслеживать проблему, вы можете изменить ответственного за нее на android-carrier-config-review@google.com.

После того как отправленный код пройдет проверку и верификацию, Gerrit автоматически объединит изменения с общедоступным репозиторием. Другие пользователи могут запустить repo sync , чтобы получить обновление в локальном клиенте.