Hỗ trợ mạng nhiều nhà vận hành

Các thiết bị chạy Android 11 trở lên có thể hỗ trợ nhiều mạng di động công cộng trên đất liền (PLMN). Android 11 bao gồm các phương thức trong API nhận dạng tế bào để lấy thông tin về PLMN được hỗ trợ của một tế bào nhằm phân biệt giữa nhà cung cấp dịch vụ di động và nhà mạng.

Tính năng hỗ trợ nhiều PLMN giúp các nhà mạng di động (MNO) linh hoạt hơn bằng cách cho phép họ truyền nhiều danh tính. Điều này chủ yếu là bắt buộc để hỗ trợ các thoả thuận chia sẻ trong đó nhiều MNO sử dụng phần cứng hoặc tháp chung. Trong trường hợp nhiều PLMN, khi chọn đăng ký bằng một tháp cụ thể, thiết bị sẽ chọn PLMN để sử dụng cho lượt đăng ký đó. Thao tác này sẽ khoá hồ sơ của thiết bị với PLMN đó đối với mọi hoạt động giao tiếp sau đó. Phương thức getRegisteredPlmn truy xuất PLMN đã đăng ký cho thiết bị.

Triển khai

Để hỗ trợ nhiều PPLMN trên các thiết bị chạy Android 11 trở lên, hãy triển khai các hàm ở các vị trí sau trong IRadio.

IRadio.hal và IRadioResponse.hal

Trong HAL Radio 1.5, để hỗ trợ nhiều PLMN, thông tin về mạng mà thiết bị đăng ký sẽ được báo cáo khác với các phiên bản trước. Trước tiên, PLMN đã đăng ký (RPLMN) được báo cáo riêng biệt vì trên các ô nhiều PLMN, RPLMN có thể không phải là mã PLMN chính. Ngoài ra, trong các cấu trúc CellIdentity, ô cung cấp một PLMN-ID chính và một danh sách các PLMN-ID bổ sung. RPLMN phải là PLMN-ID chính hoặc một trong các PLMN-ID bổ sung được chỉ định trong cấu trúc CellIdentity.

Các thay đổi trong HAL Radio 1.5 ảnh hưởng đến hai phương thức HAL sau trong IRadio.hal (và các phương thức phản hồi tương ứng trong IRadioResponse.hal).

  • getDataRegState_1_5getDataRegStateResult_1_5(RegStateResult result)
  • getVoiceRegState_1_5getVoiceRegStateResult_1_5(RegStateresult result)

types.hal

Triển khai nội dung sau trong types.hal:

  • ClosedSubscriberGroupInfo: Không bắt buộc phải có trong mọi thực thể CellIdentity. Cấu trúc này dùng để cung cấp thông tin chi tiết về nhóm người đăng ký khép kín chứa một ô, nếu có. API này thường dùng để nhận dạng các ô nhỏ như thiết bị LTE cá nhân. Bạn cũng có thể sử dụng trong các hoạt động triển khai như CBRS LTE.
  • CellIdentityLte: Hỗ trợ danh sách các mã PLMN bổ sung.
  • CellIdentityWcdma: Hỗ trợ một danh sách các mã PLMN khác.
  • CellIdentityTdscdma: Hỗ trợ danh sách các mã PLMN bổ sung.
  • RegStateResult: Bao gồm cấu trúc CellIdentity đã cập nhật và một trường để cho biết RPLMN.

Xác nhận kết quả

Để kiểm thử việc triển khai, hãy chạy kiểm thử CTS sau: CellInfoTest trong khi đăng ký mạng truy cập vô tuyến đa nhà khai thác (MORAN) hoặc mạng lõi đa nhà khai thác (MOCN).