การระบุผู้ให้บริการ

อุปกรณ์ที่ใช้ Android 9 สามารถจดจำ ข้อมูลผู้ให้บริการการสมัครใช้บริการ เพื่อระบุรหัสและชื่อผู้ให้บริการ Android ดูแลฐานข้อมูลรหัสผู้ให้บริการ โดยมีกฎการจับคู่สำหรับผู้ให้บริการแต่ละรายและรหัสผู้ให้บริการที่ไม่ซ้ำกัน AOSP มีเนื้อหาของฐานข้อมูลรหัสผู้ให้บริการในไฟล์ carrier_list.textpb ฐานข้อมูลแบบรวมนี้ช่วยลดตรรกะที่ซ้ำกันในแอปที่จำเป็นต้องระบุผู้ให้บริการและจำกัดการแสดงแอตทริบิวต์ที่ระบุผู้ให้บริการ

Android รองรับการอัปเดตตารางรหัสผู้ให้บริการและนอกแบนด์เพื่อปรับปรุงความครอบคลุมและความแม่นยำในการระบุผู้ให้บริการ การอัปเดตแต่ละครั้งจะมีหมายเลขเวอร์ชันและเผยแพร่ไปยัง AOSP

การใช้งาน

ผู้ใช้ที่ต้องการใช้การอัปเดตนอกช่องทางสามารถดาวน์โหลดไฟล์ไบนารีจาก AOSP ได้ carrier_list.pb หากต้องการดูตารางในรูปแบบที่อ่านได้ โปรดดู carrier_list.textpb

วางตารางรหัสผู้ให้บริการในพาร์ติชันข้อมูล /data/misc/carrierid/ ของอุปกรณ์ หากตารางรหัสผู้ให้บริการใหม่กว่าเวอร์ชันที่มีอยู่ อุปกรณ์จะยังคงแสดงตารางเป็นคลาสฐานข้อมูลรหัสผู้ให้บริการ ข้อมูลล่าสุดจากฐานข้อมูลรหัสผู้ให้บริการขนส่งจะได้รับการดึงมาจากวิธีสาธารณะ getSimCarrierId() และ getSimCarrierIdName()

เพิ่มข้อมูลรหัสผู้ให้บริการลงในฐานข้อมูล

หากต้องการเพิ่มหรืออัปเดตรหัสผู้ให้บริการไปยังฐานข้อมูล ให้ส่งคำขอโดยใช้แบบฟอร์มข้อมูลระบุตัวตนผู้ให้บริการ

คำขอของคุณจะได้รับการตรวจสอบ และหากได้รับอนุมัติ ระบบจะพุชการเปลี่ยนแปลงไปยังฐานโค้ด AOSP ที่ carrier_list.pb จากนั้นคุณสามารถคัดลอกรายการที่อัปเดตแล้วและรวมไว้ในบิลด์ที่กําหนดเอง

ผสานรวมรหัสผู้ให้บริการกับ CarrierConfig

ตั้งแต่ Android 10 เป็นต้นไป การกำหนดค่าของผู้ให้บริการรองรับการใช้รหัสผู้ให้บริการเป็นคีย์ในการดึงข้อมูลการกำหนดค่าเฉพาะผู้ให้บริการจาก CarrierService

การผสานรวมรหัสผู้ให้บริการกับ CarrierConfig มีข้อดีดังนี้

  • รวมคู่ MCC/MNC ทั้งหมดของผู้ให้บริการแต่ละรายไว้ในสถานที่ตั้งเดียวเพื่อนำข้อมูลที่ซ้ำหรือไม่สอดคล้องกันออก
  • สร้างตัวระบุตามหลักเกณฑ์สําหรับผู้ให้บริการแต่ละรายและลดความคลุมเครือ
  • อนุญาตให้ระบุโอเปอเรเตอร์เครือข่ายเสมือนบนอุปกรณ์เคลื่อนที่ (MVNO) ด้วยรหัสแต่ละรหัสแทนการกำหนดค่าเป็นส่วนหนึ่งของโอเปอเรเตอร์เครือข่ายมือถือ (MNO)

ย้ายข้อมูลการกำหนดค่าไปยังรหัสผู้ให้บริการ

หากต้องการย้ายข้อมูลการกำหนดค่าจากคู่ MCC/MNC ไปยังรหัสผู้ให้บริการ ให้ทำตามขั้นตอนต่อไปนี้

  1. จัดกลุ่มไฟล์ carrier_config_mccmnc.xml จากผู้ให้บริการรายเดียวไว้ด้วยกัน ใช้ carrier_list.textpb เป็นข้อมูลอ้างอิงในการแมปข้อมูล MCC, MNC และ MVNO กับผู้ให้บริการรายใดรายหนึ่ง

  2. ผสานการกําหนดค่าเข้าเป็นไฟล์เดียว

  3. (ไม่บังคับ) รับค่าจาก MNO MVNO จะรับค่าการกำหนดค่าจาก MNO ในไฟล์ carrier_config_mccmnc.xml รุ่นเดิม เนื่องจากรหัสผู้ให้บริการอนุญาตให้ผู้ให้บริการทุกราย รวมถึง MVNO มีไฟล์การกําหนดค่าเฉพาะ จึงขอแนะนําให้รวมข้อมูล MNO ไว้ในระหว่างการย้ายข้อมูล

  4. หากไม่มีการกำหนดค่าสำหรับรหัสผู้ให้บริการ MVNO ให้ดึงข้อมูลการกำหนดค่าจากรหัสผู้ให้บริการ MNO โดยใช้ getCarrierIdFromSimMccMnc

  5. เปลี่ยนชื่อไฟล์ใหม่เป็น carrier_config_carrierid_carrierid_carriername.xml โดยที่ carrierid ต้องตรงกับ canonical_id และ carriername ควรตรงกับ carrier_name ใน carrier_list.textpb