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

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

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

Выполнение

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

IRadio.hal и IRadioResponse.hal

В HAL Radio 1.5 для поддержки нескольких PLMN информация о сети, в которой регистрируется устройство, представляется иначе, чем в предыдущих версиях. Во-первых, зарегистрированный PLMN (RPLMN) сообщается отдельно, поскольку в ячейках с несколькими 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-ID.
  • CellIdentityTdscdma : поддерживает список дополнительных PLMN-ID.
  • RegStateResult : включает обновленную структуру CellIdentity и поле для указания RPLMN.

Проверка

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