Поддержка сети с несколькими операторами

Устройства, запущенные с Android 11 или выше, могут поддерживать несколько сетей наземной мобильной связи общего пользования (PLMN). Android 11 включает методы в API идентификации соты для получения информации о поддерживаемых сотой PLMN, чтобы различать поставщиков сотовых услуг и операторов сетей.

Поддержка нескольких PLMN обеспечивает гибкость для операторов мобильной связи (MNO), позволяя им транслировать несколько идентификаторов. Это в первую очередь необходимо для поддержки соглашений о совместном использовании, когда общее оборудование или вышки используются несколькими MNO. В сценарии с несколькими PLMN, когда устройство решает зарегистрироваться с использованием определенной вышки, оно выбирает PLMN для использования при этой регистрации, что блокирует профиль устройства для этого PLMN для всех последующих коммуникаций. Метод getRegisteredPlmn извлекает зарегистрированный PLMN для устройства.

Выполнение

Для поддержки multi-PLMN на устройствах под управлением Android 11 или выше реализуйте функции в следующих местах в IRadio .

IRadio.hal и IRadioResponse.hal

В Radio 1.5 HAL для поддержки multi-PLMN информация о сети, в которой регистрируется устройство, сообщается иначе, чем в предыдущих версиях. Во-первых, зарегистрированный PLMN (RPLMN) сообщается отдельно, поскольку в ячейках multi-PLMN RPLMN может не быть основным PLMN-ID. А в структурах CellIdentity ячейка предоставляет основной PLMN-ID и список дополнительных PLMN-ID. RPLMN должен быть основным PLMN-ID или одним из дополнительных PLMN-ID, указанных в структуре CellIdentity .

Изменения в Radio 1.5 HAL влияют на следующие два метода HAL в IRadio.hal (и соответствующие им методы ответа в IRadioResponse.hal ).

  • getDataRegState_1_5 и getDataRegStateResult_1_5(RegStateResult result)
  • getVoiceRegState_1_5 и getVoiceRegStateResult_1_5(RegStateresult result)

типы.hal

Реализуйте следующее в types.hal :

  • ClosedSubscriberGroupInfo : Включается опционально в каждый экземпляр CellIdentity . Эта структура используется для предоставления сведений о закрытой группе абонентов, к которой принадлежит ячейка, если таковая имеется. Обычно используется для идентификации небольших ячеек , таких как персональные устройства LTE. Также может использоваться в развертываниях, таких как CBRS LTE.
  • CellIdentityLte : поддерживает список дополнительных PLMN-ID.
  • CellIdentityWcdma : поддерживает список дополнительных идентификаторов PLMN.
  • CellIdentityTdscdma : поддерживает список дополнительных идентификаторов PLMN.
  • RegStateResult : включает обновленную структуру CellIdentity и поле для указания RPLMN.

Проверка

Чтобы протестировать реализацию, запустите следующий тест CTS: CellInfoTest во время регистрации в многооператорной сети радиодоступа (MORAN) или многооператорской базовой сети (MOCN).