Los dispositivos que se lanzan con Android 11 o versiones posteriores pueden admitir varias redes móviles públicas terrestres (PLMN). Android 11 incluye métodos en las APIs de identificación de celdas para obtener información sobre las PLMN admitidas de una celda para distinguir entre los proveedores de servicios celulares y los operadores de redes.
La compatibilidad con varias PLMN proporciona flexibilidad para los operadores de redes móviles (MNO), porque les permite transmitir varias identidades. Esto es necesario principalmente para admitir acuerdos de uso compartido en los que varios MNO usan hardware o torres comunes. En una situación de varias PLMN, cuando un dispositivo elige registrarse con una torre en particular, selecciona la PLMN que se usará para ese registro, lo que bloquea el perfil del dispositivo en esa PLMN para todas las comunicaciones posteriores. El
getRegisteredPlmn
método recupera la PLMN registrada para el dispositivo.
Implementación
Para admitir varias PLMN en dispositivos que ejecutan Android 11
o versiones posteriores, implementa las funciones en las siguientes ubicaciones en
IRadio.
IRadio.hal y IRadioResponse.hal
En el HAL de Radio 1.5, para admitir varias PLMN, la información sobre la red en la que se registra el dispositivo se informa de manera diferente que en las versiones anteriores. En primer lugar, la PLMN registrada (RPLMN) se informa por separado porque, en las celdas de varias PLMN, es posible que la RPLMN no sea el ID de PLMN principal. Además, en las estructuras CellIdentity, la celda proporciona un ID de PLMN principal y una lista de IDs de PLMN adicionales. La RPLMN debe ser el ID de PLMN principal o uno de los IDs de PLMN adicionales indicados en la estructura CellIdentity.
Los cambios en el HAL de Radio 1.5 afectan los siguientes dos métodos HAL en
IRadio.hal
(y sus métodos de respuesta correspondientes en
IRadioResponse.hal).
getDataRegState_1_5ygetDataRegStateResult_1_5(RegStateResult result)getVoiceRegState_1_5ygetVoiceRegStateResult_1_5(RegStateresult result)
types.hal
Implementa lo siguiente
en types.hal:
ClosedSubscriberGroupInfo: Se incluye de forma opcional con cada instancia deCellIdentity. Esta estructura se usa para proporcionar detalles sobre el grupo de suscriptores cerrados al que pertenece una celda, si corresponde. Por lo general, se usa para identificar celdas pequeñas , como dispositivos LTE personales. También se puede usar en implementaciones como CBRS LTE.CellIdentityLte: Admite una lista de IDs de PLMN adicionales.CellIdentityWcdma: Admite una lista de IDs de PLMN adicionales.CellIdentityTdscdma: Admite una lista de IDs de PLMN adicionales.RegStateResult: Incluye una estructuraCellIdentityactualizada y un campo para indicar la RPLMN.
Validación
Para probar tu implementación, ejecuta la siguiente prueba de CTS:
CellInfoTest
mientras estás registrado en una red de acceso de radio de varios operadores (MORAN) o
una red central de varios operadores (MOCN).