از 27 مارس 2025، توصیه می کنیم از android-latest-release
به جای aosp-main
برای ساختن و کمک به AOSP استفاده کنید. برای اطلاعات بیشتر، به تغییرات AOSP مراجعه کنید.
پشتیبانی از شبکه چند اپراتور
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
دستگاههایی که با Android 11 یا بالاتر راهاندازی میشوند میتوانند از چندین شبکه تلفن همراه زمینی (PLMN) پشتیبانی کنند. Android 11 شامل روشهایی در APIهای شناسایی سلولی برای دریافت اطلاعات در مورد PLMNهای پشتیبانیشده سلول برای تمایز بین ارائهدهندگان خدمات تلفن همراه و اپراتورهای شبکه است.
پشتیبانی از Multi-PLMN با اجازه دادن به اپراتورهای شبکه تلفن همراه (MNOs) برای پخش چندین هویت، انعطاف پذیری را فراهم می کند. این در درجه اول برای پشتیبانی از توافق نامه های اشتراک گذاری مورد نیاز است که در آن سخت افزار یا برج های رایج توسط چندین MNO استفاده می شود. در یک سناریوی چند PLMN، وقتی دستگاهی انتخاب میکند با استفاده از یک برج خاص ثبت نام کند، PLMN را برای استفاده برای آن ثبت انتخاب میکند، که نمایه دستگاه را روی آن PLMN برای تمام ارتباطات بعدی قفل میکند. متد getRegisteredPlmn
PLMN ثبت شده دستگاه را بازیابی می کند.
پیاده سازی
برای پشتیبانی از چند PLMN در دستگاههای دارای Android 11 یا بالاتر، عملکردها را در مکانهای زیر در IRadio
اجرا کنید.
IRadio.hal و IRadioResponse.hal
در رادیو 1.5 HAL، برای پشتیبانی از چند PLMN، اطلاعات مربوط به شبکه ای که دستگاه در آن ثبت می کند متفاوت از نسخه های قبلی گزارش می شود. ابتدا، PLMN ثبت شده (RPLMN) به طور جداگانه گزارش می شود زیرا در سلول های چند PLMN، RPLMN ممکن است PLMN-ID اولیه نباشد. و در ساختارهای CellIdentity
، سلول یک PLMN-ID اولیه و لیستی از PLMN-ID های اضافی را ارائه می دهد. RPLMN باید PLMN-ID اولیه یا یکی از PLMN-ID های اضافی باشد که در ساختار CellIdentity
نشان داده شده است.
تغییرات در رادیو 1.5 HAL بر دو روش HAL زیر در IRadio.hal
(و روشهای پاسخ مربوط به آنها در IRadioResponse.hal
) تأثیر میگذارد.
-
getDataRegState_1_5
و getDataRegStateResult_1_5(RegStateResult result)
-
getVoiceRegState_1_5
و getVoiceRegStateResult_1_5(RegStateresult result)
انواع.حال
موارد زیر را در types.hal
پیاده سازی کنید:
-
ClosedSubscriberGroupInfo
: به صورت اختیاری در هر نمونه CellIdentity
گنجانده شده است. این ساختار برای ارائه جزئیات در مورد گروه مشترک بسته ای که یک سلول به آن تعلق دارد، در صورت وجود استفاده می شود. این معمولا برای شناسایی سلول های کوچک مانند دستگاه های LTE شخصی استفاده می شود. همچنین می توان از آن در استقرارهایی مانند CBRS LTE استفاده کرد. -
CellIdentityLte
: از لیستی از PLMN-ID های اضافی پشتیبانی می کند. -
CellIdentityWcdma
: از لیستی از PLMN-IDهای اضافی پشتیبانی می کند. -
CellIdentityTdscdma
: از لیستی از PLMN-ID های اضافی پشتیبانی می کند. -
RegStateResult
: شامل یک ساختار CellIdentity
به روز شده و یک فیلد برای نشان دادن RPLMN است.
اعتبار سنجی
برای آزمایش اجرای خود، آزمایش CTS زیر را اجرا کنید: CellInfoTest
در حالی که در یک شبکه دسترسی رادیویی چند اپراتور (MORAN) یا شبکه هسته چند اپراتور (MOCN) ثبت شده است.
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی."],[],[],null,["# Multi-operator network support\n\nDevices launching with Android 11 or higher can provide\nsupport for multiple public land mobile networks (PLMNs). Android\n11 includes methods in the\n[cell identification APIs](https://developer.android.com/reference/android/telephony/CellIdentity)\nto get information about a cell's supported PLMNs to distinguish between\ncellular service providers and network operators.\n\nMulti-PLMN support provides flexibility to mobile network operators (MNOs) by\nallowing them to broadcast multiple identities. This is primarily required to\nsupport sharing agreements where common hardware or towers are used by multiple\nMNOs. In a multi-PLMN scenario, when a device chooses to register using a\nparticular tower, it selects the PLMN to use for that registration, which locks\nthe device's *profile* to that PLMN for all ensuing communication. The\n[`getRegisteredPlmn`](https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#getRegisteredPlmn())\nmethod retrieves the registered PLMN for the device.\n\nImplementation\n--------------\n\nTo support multi-PLMN on devices running Android 11\nor higher, implement the functions in the following locations in\n[`IRadio`](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/radio/1.5/).\n\n### IRadio.hal and IRadioResponse.hal\n\nIn the Radio 1.5 HAL, to support multi-PLMN, information about the network the\ndevice registers on is reported differently than previous versions. First, the\nregistered PLMN (RPLMN) is reported separately because on multi-PLMN cells, the\nRPLMN might not be the primary PLMN-ID. And in the `CellIdentity` structures,\nthe cell provides a primary PLMN-ID and a list of additional PLMN-IDs. The RPLMN\nmust be the primary PLMN-ID or one of the additional PLMN-IDs indicated in the\n`CellIdentity` structure.\n\nThe changes in the Radio 1.5 HAL impact the following two HAL methods in\n[`IRadio.hal`](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/radio/1.5/IRadio.hal)\n(and their corresponding response methods in\n[`IRadioResponse.hal`](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/radio/1.5/IRadioResponse.hal)).\n\n- `getDataRegState_1_5` and `getDataRegStateResult_1_5(RegStateResult\n result)`\n- `getVoiceRegState_1_5` and `getVoiceRegStateResult_1_5(RegStateresult\n result)`\n\n### types.hal\n\nImplement the following\nin [`types.hal`](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/radio/1.5/types.hal):\n\n- `ClosedSubscriberGroupInfo`: Included optionally with every `CellIdentity` instance. This structure is used to provide details about the closed subscriber group to which a cell belongs, if any. This is commonly used to identity *small cells* such as personal LTE devices. It can also be used in deployments such as CBRS LTE.\n- `CellIdentityLte`: Supports a list of additional PLMN-IDs.\n- `CellIdentityWcdma`: Supports a list of additional PLMN-IDs.\n- `CellIdentityTdscdma`: Supports a list of additional PLMN-IDs.\n- `RegStateResult`: Includes an updated `CellIdentity` structure and a field to indicate the RPLMN.\n\nValidation\n----------\n\nTo test your implementation, run the following CTS test:\n[`CellInfoTest`](https://android.googlesource.com/platform/cts/+/3c3d33a/tests/tests/telephony/src/android/telephony/cts/CellInfoTest.java)\nwhile registered to a multi-operator radio access network (MORAN) or\nmulti-operator core network (MOCN)."]]