Geräte, die mit Android 11 oder höher auf den Markt gebracht werden, können mehrere öffentliche Landmobilnetzwerke (PLMNs) unterstützen. Android 11 enthält Methoden in den Cell Identification APIs, um Informationen zu den unterstützten PLMNs einer Zelle abzurufen, um zwischen Mobilfunkanbietern und Netzwerkbetreibern zu unterscheiden.
Die Unterstützung mehrerer PLMNs bietet Mobilfunkanbietern Flexibilität, da sie mehrere Identitäten übertragen können. Dies ist vor allem erforderlich, um Vereinbarungen zur gemeinsamen Nutzung zu unterstützen, bei denen gemeinsame Hardware oder Türme von mehreren Mobilfunkanbietern genutzt werden. Wenn sich ein Gerät in einem Szenario mit mehreren PLMNs über einen bestimmten Mobilfunkmast registrieren möchte, wählt es die PLMN aus, die für diese Registrierung verwendet werden soll. Dadurch wird das Profil des Geräts für die gesamte nachfolgende Kommunikation auf diese PLMN festgelegt. Die Methode getRegisteredPlmn
ruft die registrierte PLMN für das Gerät ab.
Implementierung
Damit mehrere PLMN auf Geräten mit Android 11 oder höher unterstützt werden, musst du die Funktionen an den folgenden Stellen in IRadio
implementieren.
IRadio.hal und IRadioResponse.hal
In der Radio 1.5 HAL werden Informationen zum Netzwerk, bei dem sich das Gerät registriert, zur Unterstützung mehrerer PLMNs anders als in früheren Versionen gemeldet. Erstens wird die registrierte PLMN (RPLMN) separat erfasst, da sie in Zellen mit mehreren PLMNs möglicherweise nicht die primäre PLMN-ID ist. In den CellIdentity
-Strukturen enthält die Zelle eine primäre PLMN-ID und eine Liste mit zusätzlichen PLMN-IDs. Die RPLMN muss die primäre PLMN-ID oder eine der zusätzlichen PLMN-IDs sein, die in der CellIdentity
-Struktur angegeben sind.
Die Änderungen in Radio 1.5 HAL wirken sich auf die folgenden beiden HAL-Methoden in IRadio.hal
und die entsprechenden Antwortmethoden in IRadioResponse.hal
aus.
getDataRegState_1_5
undgetDataRegStateResult_1_5(RegStateResult result)
getVoiceRegState_1_5
undgetVoiceRegStateResult_1_5(RegStateresult result)
Typen.hal
Implementieren Sie Folgendes in types.hal
:
ClosedSubscriberGroupInfo
: Optional in jederCellIdentity
-Instanz enthalten. Diese Struktur wird verwendet, um Details zur geschlossenen Abonnentengruppe anzugeben, zu der eine Zelle gehört, sofern zutreffend. Dieser Wert wird häufig verwendet, um Small Cells wie persönliche LTE-Geräte zu identifizieren. Sie kann auch in Bereitstellungen wie CBRS LTE verwendet werden.CellIdentityLte
: Unterstützt eine Liste zusätzlicher PLMN-IDs.CellIdentityWcdma
: Unterstützt eine Liste mit zusätzlichen PLMN-IDs.CellIdentityTdscdma
: Unterstützt eine Liste mit zusätzlichen PLMN-IDs.RegStateResult
: Enthält eine aktualisierteCellIdentity
-Struktur und ein Feld, um die RPLMN anzugeben.
Zertifizierungsstufe
Führen Sie zum Testen Ihrer Implementierung den folgenden CTS-Test aus:
CellInfoTest
Registrierung bei einem Multi-Operator Radio Access Network (MORAN) oder einem Multi-Operator Core Network (MOCN).