Obsługa sieci wielu operatorów

Urządzenia wprowadzane 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 (MNO) elastyczność, ponieważ umożliwia im nadawanie wielu tożsamości. Jest to wymagane przede wszystkim w przypadku umów o współdzielenie, w których wielu operatorów MNO korzysta ze wspólnego sprzętu lub wież. W scenariuszu z wieloma sieciami PLMN, gdy urządzenie zdecyduje się zarejestrować za pomocą określonej wieży, wybiera sieć PLMN, która ma być używana do rejestracji, co powoduje zablokowanie profilu urządzenia w tej 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 interfejsie HAL Radio 1.5, aby obsługiwać wiele sieci PLMN, informacje o sieci, w której rejestruje się urządzenie, są zgłaszane inaczej niż w poprzednich wersjach. Po pierwsze, zarejestrowana sieć PLMN (RPLMN) jest zgłaszana oddzielnie, ponieważ w przypadku komórek z wieloma sieciami PLMN sieć RPLMN może nie być podstawowym identyfikatorem PLMN. W strukturach CellIdentity komórka udostępnia podstawowy identyfikator PLMN i listę dodatkowych identyfikatorów PLMN. Sieć RPLMN musi być podstawowym identyfikatorem PLMN lub jednym z dodatkowych identyfikatorów PLMN wskazanych w strukturze CellIdentity.

Zmiany w interfejsie HAL Radio 1.5 wpływają na te 2 metody HAL w IRadio.hal (i odpowiadające im metody odpowiedzi w IRadioResponse.hal):

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

types.hal

Zaimplementuj te elementy w types.hal:

  • ClosedSubscriberGroupInfo: opcjonalnie dołączana do każdej instancji CellIdentity. Ta struktura służy do podawania szczegółowych informacji o zamkniętej grupie abonentów, do której należy komórka. Jest ona zwykle używana do identyfikowania małych komórek, takich jak osobiste urządzenia LTE. Może być też używana w przypadku wdrożeń 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 sieć RPLMN.

Weryfikacja

Aby przetestować implementację, uruchom ten test CTS: CellInfoTest podczas rejestracji w sieci radiowej z wieloma operatorami (MORAN) lub w sieci szkieletowej z wieloma operatorami (MOCN).