Supporto di rete con più operatori

I dispositivi lanciati con Android 11 o versioni successive possono supportare più reti di telefonia mobile terrestri pubbliche (PLMN). Android 11 include metodi nelle API di identificazione delle celle per ottenere informazioni sui PLMN supportati da una cella al fine di distinguere tra provider di servizi di telefonia cellulare e operatori di rete.

Il supporto di più PLMN offre flessibilità agli operatori di rete mobile (MNO) consente loro di trasmettere più identità. Questo è necessario principalmente per supportare i contratti di condivisione in cui hardware o torri comuni vengono utilizzati da più operatori di telefonia mobile. In uno scenario multi-PLMN, quando un dispositivo sceglie di registrarsi utilizzando un torre particolare, seleziona il PLMN da utilizzare per quella registrazione, che blocca il profilo del dispositivo a quel PLMN per tutte le comunicazioni successive. Il metodo getRegisteredPlmn recupera il PLMN registrato per il dispositivo.

Implementazione

Per supportare più PLMN sui dispositivi con Android 11 o versioni successive, implementa le funzioni nelle seguenti posizioni in IRadio.

IRadio.hal e IRadioResponse.hal

Nell'HAL Radio 1.5, per supportare più PLMN, le informazioni sulla rete su cui si registra il dispositivo vengono registrate in modo diverso rispetto alle versioni precedenti. Innanzitutto, il PLMN registrato (RPLMN) viene registrato separatamente perché nelle celle con più PLMN il RPLMN potrebbe non essere l'ID PLMN principale. Nelle strutture CellIdentity, la cella fornisce un ID PLMN principale e un elenco di ID PLMN aggiuntivi. RPLMN deve essere l'ID PLMN principale o uno degli ID PLMN aggiuntivi indicati nella struttura CellIdentity.

Le modifiche all'HAL Radio 1.5 influiscono sui seguenti due metodi HAL in IRadio.hal (e sui relativi metodi di risposta in IRadioResponse.hal).

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

types.hal

Implementa quanto segue in types.hal:

  • ClosedSubscriberGroupInfo: incluso facoltativamente con ogni istanza CellIdentity. Questa struttura viene utilizzata per fornire dettagli sul gruppo di abbonati chiusi a cui appartiene una cella, se presente. Questo valore viene spesso utilizzato per identificare le small cell, come i dispositivi LTE personali. Può essere utilizzato anche in implementazioni come CBRS LTE.
  • CellIdentityLte: supporta un elenco di ID PLMN aggiuntivi.
  • CellIdentityWcdma: supporta un elenco di ID PLMN aggiuntivi.
  • CellIdentityTdscdma: supporta un elenco di ID PLMN aggiuntivi.
  • RegStateResult: include una struttura CellIdentity aggiornata e un campo per indicare l'RPLMN.

Convalida

Per testare l'implementazione, esegui il seguente test CTS: CellInfoTest dopo aver effettuato la registrazione a una rete di accesso radio multioperatore (MORAN) o a una rete di core multioperatore (MOCN).