Urządzenia wprowadzone na rynek z Androidem 11 lub nowszym mogą obsługiwać wiele publicznych sieci komórkowych (PLMN). Android 11 zawiera metody w interfejsach API identyfikacji komórek, które umożliwiają uzyskiwanie informacji o obsługiwanych przez komórkę sieciach PLMN, aby odróżniać dostawców usług komórkowych od operatorów sieci.
Obsługa wielu sieci PLMN zapewnia operatorom sieci komórkowych elastyczność, ponieważ umożliwia im nadawanie wielu tożsamości. Jest to wymagane przede wszystkim w przypadku umów o współdzieleniu, w których z tego samego sprzętu lub wież korzysta kilku operatorów sieci komórkowych. W przypadku wielu sieci PLMN, gdy urządzenie zdecyduje się zarejestrować za pomocą konkretnej stacji bazowej, wybiera sieć PLMN, która będzie używana do rejestracji. W ten sposób profil urządzenia zostaje powiązany z tą siecią PLMN na potrzeby całej dalszej komunikacji. Metoda
getRegisteredPlmn
pobiera zarejestrowaną sieć PLMN dla urządzenia.
Implementacja
Aby obsługiwać wiele sieci PLMN na urządzeniach z Androidem 11 lub nowszym, zaimplementuj funkcje w tych lokalizacjach w IRadio
.
IRadio.hal i IRadioResponse.hal
W przypadku interfejsu HAL radia w wersji 1.5, aby obsługiwać wiele sieci PLMN, informacje o sieci, w której rejestruje się urządzenie, są raportowane inaczej niż w poprzednich wersjach. Po pierwsze, zarejestrowana sieć PLMN (RPLMN) jest raportowana oddzielnie, ponieważ w przypadku komórek z wieloma sieciami PLMN zarejestrowana sieć PLMN może nie być podstawowym identyfikatorem PLMN. W CellIdentity
strukturach komórka zawiera podstawowy identyfikator PLMN i listę dodatkowych identyfikatorów PLMN. Wartość RPLMN musi być podstawowym identyfikatorem PLMN lub jednym z dodatkowych identyfikatorów PLMN wskazanych w strukturze CellIdentity
.
Zmiany w HAL radia 1.5 mają wpływ na te 2 metody HAL w IRadio.hal
(i odpowiadające im metody odpowiedzi w IRadioResponse.hal
):
getDataRegState_1_5
igetDataRegStateResult_1_5(RegStateResult result)
getVoiceRegState_1_5
igetVoiceRegStateResult_1_5(RegStateresult result)
types.hal
Zaimplementuj w funkcji types.hal
te elementy:
ClosedSubscriberGroupInfo
: opcjonalnie dołączany do każdej instancjiCellIdentity
. Ta struktura służy do podawania szczegółowych informacji o zamkniętej grupie abonentów, do której należy komórka, jeśli taka grupa istnieje. Jest to powszechnie stosowane do identyfikowania małych komórek, takich jak osobiste urządzenia LTE. Może być też używany we wdrożeniach takich jak CBRS LTE.CellIdentityLte
: obsługuje listę dodatkowych identyfikatorów PLMN.CellIdentityWcdma
: obsługuje listę dodatkowych identyfikatorów PLMN.CellIdentityTdscdma
: obsługuje listę dodatkowych identyfikatorów PLMN.RegStateResult
: zawiera zaktualizowaną strukturęCellIdentity
i pole wskazujące RPLMN.
Weryfikacja
Aby przetestować implementację, uruchom ten test CTS:
CellInfoTest
podczas rejestracji w sieci radiowej z dostępem wielu operatorów (MORAN) lub
w sieci szkieletowej z dostępem wielu operatorów (MOCN).