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

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

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

การดำเนินการ

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

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

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

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

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

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

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

การรวม ID ผู้ให้บริการกับ CarrierConfig มีข้อดีดังต่อไปนี้:

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

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

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

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

  2. รวมการกำหนดค่าเป็นไฟล์เดียว

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

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

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