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

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

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

Выполнение

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

IRadio.hal и IRadioResponse.hal

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

types.hal

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

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

Валидация

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