Più profili abilitati

Per i dispositivi con Android 13 o versioni successive, Android supporta più profili abilitati (MEP) per eUICC. Questa funzionalità consente ai dispositivi supportare il sistema dual SIM con un singolo chip eSIM, che può avere più SIM profili e possono connettersi a due diversi operatori contemporaneamente. Dispositivo i produttori devono collaborare con fornitori di SoC e chipset eSIM di integrare questa funzionalità sui loro dispositivi.

Premessa

Sui dispositivi con Android 12 e versioni precedenti, AOSP fornisce un supporto limitato per consentire a una singola eSIM di supportare più profili contemporaneamente. Nonostante il notevole spazio e i risparmi sui costi offerti dall'eSIM, la mancanza del supporto della doppia SIM impedisce ai produttori di adottare soluzioni dispositivi mobili. Per fornire il supporto per dual SIM su un dispositivo che utilizza solo eSIM, i produttori devono inserire due elementi eSIM nel dispositivo, aumentando costi delle fatture (BOM) e determina un'esperienza utente scadente per l'abbonamento gestione dei dispositivi. La funzionalità MEP disponibile in AOSP a partire da Android 13 risolve questo problema.

Architettura eUICC

Questa sezione descrive l'architettura del chip eSIM per i dispositivi con MEP per diverse versioni di Android e l'architettura dei chip eSIM per i dispositivi senza MP.

Android 14

Per i dispositivi con Android 14 o versioni successive, Android supporta MEP-A1 e MEP-B per la selezione della radice del dominio di sicurezza dell'emittente (ISD-R) e delle porte eSIM come specificato in GSMA SGP V22 3.0. Di seguito sono descritti i modelli di selezione MEP-A1 e MEP-B ISD-R.

  • MEP-A1: ISD-R è selezionato sulla porta 0 (la porta di comando è 0) e profili selezionati sulle porte eSIM 1 e successive. I comandi ES10 sono sempre inviati alla porta 0, mentre la porta di comando e quella di destinazione sono sempre diverse. L'LPA seleziona la porta.

    Modello di selezione ISD-R MEP-A1

    Figura 1. Modello di selezione ISD-R MEP-A1

  • MEP-B: la porta ISD-R è selezionata su qualsiasi porta e a ogni porta può essere assegnato un profilo. I comandi di abilitazione e disabilitazione vengono inviati alla porta in cui il profilo deve essere attivato o disattivato (quando un aggiornamento è in attesa). La e la porta di destinazione sono sempre le stesse.

    Modello di selezione ISD-R MEP-B

    Figura 2. Modello di selezione ISD-R MEP-B

Android 13

In Android 13 o versioni successive, sui dispositivi che supportano MEP, lo slot dell'eSIM contiene più porte eUICC in cui è possibile abilitare profilo. Come mostrato nella Figura 3, con questa architettura, una singola eUICC (una singola uno slot fisico) supporta la modalità Dual SIM (Dual standby) (DSDS) grazie a ciascuna porta eUICC a una banda di base del modem. Android 13 HAL e le API Indipendente dalla variante MEP.

Architettura con chip eSIM con supporto MEP

Figura 3. Architettura del chip eSIM con supporto per MEP (Android 13 o versioni successive)

Android 12 e versioni precedenti

Per i dispositivi con Android 12 o versioni precedenti senza MEP, come mostrato nella Figura 4, Lo slot dell'eSIM supporta un solo profilo abilitato alla volta e il dispositivo non supporta DSDS.

Architettura del chip eSIM senza supporto MEP

Figura 4. Architettura del chip eSIM senza supporto di MEP (Android 12 o inferiore)

Flusso di informazioni delle API per più profili abilitati

La Figura 5 descrive il flusso di informazioni per MEP per eUICC in Android 13. Il framework della telefonia include UiccPort, che rappresenta la struttura fisica su eUICC. La La classe UiccPort viene utilizzata per tutti i tipi di schede SIM: SIM fisica (pSIM), SIM integrata (iSIM) e SIM incorporata (eSIM). Per una eUICC con più di porte, un singolo oggetto UiccSlot e un oggetto UiccCard sono mappati più istanze di UiccPort. Ogni istanza UiccPort può collegarsi al massimo a un UiccProfile istanza. Questo flusso consente a UiccPort di mapparsi a uno slot logico e UiccSlot (fisico slot) per mappare più slot logici.

Flusso di informazioni dei PE

Figura 5. Flusso di informazioni per eUICC con assistenza del PE

Implementazione

Questa sezione descrive come implementare la funzionalità MEP, inclusi i dettagli sui requisiti dell'HAL, sulle API e sull'interfaccia utente. I produttori di dispositivi devono collaborare con fornitori di SoC e chipset eSIM per supportare MEP.

Requisiti dell'HAL

Per supportare MEP per eUICC, implementa le seguenti API IRadio AIDL HAL, che si trovano nel /platform/hardware/interfaces/radio/aidl/aidl_api

I dispositivi con Android 14 o versioni successive devono utilizzare IRadio 2.1 versione dell'HAL che utilizzano MultipleEnabledProfileMode (modello di selezione ISD-R supportato dal modem o da eUICC) e superano l'API ES10 APDU durante le operazioni del canale logico ICC.

Stato Carta

Il modem deve supportare CardStatus dell'API in risposta getIccCardStatusResponse . La risposta deve includere l'indice della porta e dell'indice dello slot fisico specificato da SimPortSlotMapping

Per i dispositivi con Android 14 o versioni successive, il modem devono trasmettere le informazioni Modalità MEP con tutti gli eventi CardStatus.

Stato slot SIM

Il modem deve supportare SimSlotStatus dell'API in risposta getSimSlotsStatus . Lo stato dello slot della SIM include un array dei SimPortInfo interfaccia, che include l'indice della porta, l'ICCID per il profilo abilitato e lo stato della porta. Il modem deve restituire almeno due oggetti SimPortInfo.

Per i dispositivi con Android 14 o versioni successive, il modem devono trasmettere le informazioni Modalità MEP con tutti gli eventi CardStatus.

setSimSlotMapping

La setSimSlotMapping deve passare un array di SimPortSlotMapping. L'indice dell'array è lo slot logico SimPortSlotMapping specifica la porta mappata e lo slot fisico corrispondenti indice. Il metodo setSimSlotMapping imposta il mapping dalle porte alla configurazione logica slot machine. L'app LPA utilizza questo metodo per selezionare la porta attiva.

API che supportano MEP per eUICC

Dispositivi Android che supportano più profili abilitati nell'ambito dell'AOSP stack di telefonia necessario per supportare le seguenti API.

UiccCardInfo

  • (Android 13 e versioni successive) isMultipleEnabledProfilesSupported : indica se questo UICC supporta MEP.
  • (Android 13 e versioni successive) getPorts: Resi l'elenco di tutte le porte possibili per un particolare UICC. Se l'UICC è una pSIM o una eSIM che non supporta MEP restituisce un elenco di un elemento.
  • (Deprecato) getIccId: Restituisce un ICCID. Perché un UICC può avere più di un ICCID per i dispositivi con MEP, usa invece UiccPortInfo.getIccId().

(Android 13 e versioni successive) UiccPortInfo

  • getIccId: Restituisce l'ICCID se su questa porta è presente un abbonamento abilitato.
  • getPortIndex: Restituisce l'indice della porta.
  • getLogicalSlotIndex: Restituisce l'indice dello stack del modem logico attivo.

Informazioni sull'abbonamento

  • (Android 13 e versioni successive) getPortIndex: Restituisce l'indice di porta su cui è abilitato l'abbonamento. Se l'abbonamento è disabilitato, restituisce INVALID_PORT_ID -1.

Gestore Euicc

  • switchToSubscription: Passa a un determinato abbonamento. Usato da app che non dispongono dell'operatore per gli abbonamenti attivi. Quando viene chiamato, la piattaforma risolve internamente l'indice delle porte mediante una selezione a tre scelte finestra di dialogo per disabilitare l'abbonamento attivo selezionato se non ci sono porte disponibili. Le app destinate ad Android 13 e versioni successive non devono utilizzare a questa API per disabilitare un abbonamento passando un ID abbonamento non valido; devono utilizzare switchToSubscription (aggiunto in Android 13) con l'indice di porta specificato.
  • (Android 13 e versioni successive) switchToSubscription(int subscriptionId, int portIndex, PendingIntent callback): Passa a un determinato abbonamento. App per chiamare con privilegi dell'operatore superiori Gli abbonamenti attivi possono specificare su quale porta abilitare l'abbonamento attiva.
  • (Android 13 e versioni successive) isSimPortAvailable: Restituisce se l'indice di porta passante è disponibile. È disponibile una porta se non ha l'abbonamento attivo o se l'app per le chiamate dispone dei privilegi dell'operatore rispetto all'abbonamento installato sulla porta selezionata.

Servizio Euicc

  • (Android 13 e versioni successive) onSwitchToSubscriptionWithPort: Passa a un determinato abbonamento su una porta specificata. Implementazione LPA devono supportare questa funzionalità su Android 13 e versioni successive.

Gestore telefonia

Interfaccia utente

Per risolvere l'ambiguità della selezione delle porte eSIM, sui dispositivi che supportano MEP: per poter attivare un nuovo abbonamento, gli utenti devono essere in grado di disabilitare uno degli abbonamenti attivi abbonamento. In Android 13, AOSP include un flusso utente con un modello a tre scelte finestra di dialogo che può essere applicata all'attivazione dei flussi utente dall'app Impostazioni. La figura 6 mostra un esempio di questo flusso UX.

Flusso utente per l'abbonamento a SIM MEP

Figura 6. Flusso utente per attivare l'abbonamento alla SIM

Flag funzionalità

Per supportare MEP, i dispositivi devono dichiarare i seguenti flag delle funzionalità:

Implementazione LPA

Per supportare MEP, assicurati che il tuo LPA la tua implementazione soddisfi i seguenti requisiti:

  • Implementa le API da EuiccService per supportare più porte.
  • Utilizza le API per la selezione delle porte e l'attivazione del profilo.
  • Fornisce un'esperienza utente che consente alle app degli operatori di abilitare i profili su porte selezionate.

Convalida

Per testare l'implementazione della funzionalità MEP, assicurati che le build superino seguenti scenari di test CTS (per le API pubbliche): /platform/cts/tests/tests/telephony/current/src/android/telephony/euicc/cts

I produttori di dispositivi dovrebbero utilizzare anche modem, chip eUICC e sistema operativo eSIM. di garantire che il dispositivo possa:

  • È possibile abilitare e collegare due profili eSIM a due reti diverse.
  • I profili eSIM possono essere attivati e disattivati su qualsiasi porta eSIM.
  • Esiste un flusso UX attivato dall'app dell'operatore che consente agli utenti di cambiare profili.

Consiglio per gli operatori

Per garantire che gli utenti non perdano il servizio quando spostano i profili eSIM da una piattaforma a un altro, consigliamo agli operatori di fornire assistenza per quanto segue:

  • Mappatura fluida di IMEI e SIM
  • Più ICCID o SIM per ogni identificatore eUICC (EID)