APN และ CarrierConfig

ผู้ให้บริการสามารถอัปเดตข้อมูลจุดเข้าใช้งาน (APN) และ การตั้งค่ากำหนดเฉพาะผู้ให้บริการ (CarrierConfig) ในโครงการโอเพนซอร์ส Android (AOSP)

บัญชี Google ที่ใช้อีเมลของบริษัท

หากต้องการอัปเดตข้อมูล APN หรือ CarrierConfig คุณต้องมี เพื่อส่งคำขอโดยใช้บัญชี Google ที่มีอีเมลบริษัทที่ใช้งานได้ (ตัวอย่างเช่น คำขออัปเดต APN จาก Acme Company ควรมาจาก เช่น foobar@acme.com)

หากคุณไม่มีบัญชี Google ที่เชื่อมโยงกับอีเมลของบริษัท ให้ออกจากระบบบัญชี Gmail ทั้งหมดจากเบราว์เซอร์ของคุณ (เราขอแนะนำให้ใช้ เช่น หน้าต่างที่ไม่ระบุตัวตนเพื่อไม่ให้เกิดความสับสนกับ บัญชีอื่นของคุณ) จากนั้น สร้างบัญชี Google บัญชีโดยใช้อีเมลของบริษัท

จัดเตรียมสภาพแวดล้อมในการพัฒนาในท้องถิ่น

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

นอกจากนี้ เราขอแนะนำให้คุณใช้ เครื่องมือติดตามปัญหาของ Google เพื่อติดตามการเปลี่ยนแปลง

รายงานข้อบกพร่อง

  1. ไปที่ issuetracker.google.com และลงชื่อเข้าใช้ด้วยอีเมลของบริษัท (โปรดดู บัญชี Google ด้วยอีเมลของบริษัท)
  2. หลังจากลงชื่อเข้าสู่ระบบแล้ว ให้คลิกสร้างปัญหาทางด้านซ้ายของ บนหน้าจอ
  3. ในคอมโพเนนต์ ให้เลือก Android Public เครื่องมือติดตาม > เฟรมเวิร์ก
  4. ไปยังการอัปเดต AAP หรือ การอัปเดต CarrierConfig ตามความเหมาะสม เพื่อป้อนชื่อและคำอธิบาย

ข้อบกพร่อง APN

ตั้งค่าแอตทริบิวต์ของข้อบกพร่องดังนี้

ชื่อ: เพิ่ม/แก้ไข/ลบ APN สำหรับ CarrierXYZ

คำอธิบาย: เพิ่มคำอธิบายการเปลี่ยนแปลงโดยละเอียด ซึ่งรวมถึงการตั้งค่า APN เอง

ข้อบกพร่อง CarrierConfig

ตั้งค่าแอตทริบิวต์ของข้อบกพร่องดังนี้

ชื่อ: การเปลี่ยนแปลงการกำหนดค่าสำหรับ CarrierXYZ

คำอธิบาย: เพิ่มคำอธิบายการเปลี่ยนแปลงโดยละเอียด ที่ขอ

ส่งข้อมูลการเปลี่ยนแปลง

วิธีทำการเปลี่ยนแปลง

  1. ระบุไฟล์ที่จะเปลี่ยน
  2. แก้ไขไฟล์
  3. ดำเนินการเปลี่ยนแปลงที่เก็บในเครื่องของคุณโดยทำตามคำแนะนำ สำหรับ ส่งแพตช์ โดยให้ความสำคัญกับหลักเกณฑ์ข้อความคอมมิต รวมทั้งรูปแบบที่แนะนำ
  4. หลังจากที่คุณยืนยันการเปลี่ยนแปลงในประวัติส่วนตัวแล้ว ให้อัปโหลดประวัติดังกล่าวไปยัง Gerrit โดยใช้คำสั่ง repo upload
  5. หลังจากอัปโหลดสำเร็จ repo จะให้ URL ของหน้าเว็บใหม่บน เกอร์ริต ใช้ URL นี้เพื่อ:
    • ดูแพตช์ของคุณในเซิร์ฟเวอร์การตรวจสอบ
    • แสดงความคิดเห็น
    • ขอผู้ตรวจสอบที่เจาะจงสำหรับแพตช์ของคุณ

ไวยากรณ์ APN

ชื่อโปรเจ็กต์ Android - อุปกรณ์/ตัวอย่าง

ชื่อไฟล์ - etc/apns-full-conf.xml (Google ลิงก์หลักของ Git)

ไฟล์มีการตั้งค่า APN ในรูปแบบ XML และทำหน้าที่เป็นไฟล์ตัวอย่าง ดังนั้นลักษณะการทำงานของอุปกรณ์ Android จะไม่เปลี่ยนแปลง

การกำหนดค่า APN ทั่วไปจะมีลักษณะดังนี้

<apn carrier="CarrierXYZ"
      mcc="123"
      mnc="123"
      apn="carrierxyz"
      type="default,supl,mms,ims,cbs"
      mmsc="http://mms.carrierxyz.com"
      mmsproxy="0.0.0.0"
      mmsport="80"
      bearer_bitmask="4|5|6|7|8|12"
/>

การทดสอบ

  1. เชื่อมต่ออุปกรณ์ Android เครื่องใดก็ได้ที่คุณมีสิทธิ์เข้าถึงระดับรูท
  2. เพิ่มการตั้งค่าลงใน /etc/apns-conf.xml
  3. รีเซ็ตการตั้งค่า APN
  4. ในการตั้งค่า APN ให้ยืนยันว่าโปรไฟล์โหลดอย่างถูกต้อง
  5. ทดสอบการเชื่อมต่ออินเทอร์เน็ต, ฮอตสปอต Wi-Fi และ MMS สำหรับแต่ละโปรไฟล์ เพื่อให้แน่ใจว่าทำงานได้อย่างถูกต้อง

ข้อความคอมมิต

[Example - "Add CarrierXYZ apns to sample apns"]
Bug: [Issue ID from Google Issue Tracker]
Test: No change to behavior as this is only a sample file

ตัวอย่าง CL

โปรดดู ตัวอย่าง APN ของ BICS สำหรับตัวอย่าง CL

ไวยากรณ์ CarrierConfig

ชื่อโปรเจ็กต์ - แพลตฟอร์ม/แพ็กเกจ/แอป/CarrierConfig

ชื่อไฟล์ - assets/carrier_config_.xml (Google ลิงก์หลักของ Git)

ระบุไฟล์ XML ที่เกี่ยวข้องในโฟลเดอร์เนื้อหาตาม MCC/MNC ที่เกี่ยวข้อง tuple ไฟล์นี้มีออบเจ็กต์การกำหนดค่าผู้ให้บริการในรูปแบบ XML ชื่อแอตทริบิวต์กำหนดเป็นคีย์ภายใต้ CarrierConfigManager และประเภทค่า (int/string/bool) อยู่ ตามคำต่อท้าย

แอตทริบิวต์ int/string/bool โดยทั่วไปจะมีลักษณะดังนี้

<int name="vvm_port_number_int" value="5499" />
<string name="vvm_type_string">vvm_type_omtp</string >
<boolean name="vvm_cellular_data_required_bool" value="true" />

ข้อความคอมมิต

[Example - "Add VVM settings for CarrierXYZ"]

[Example - "Updated <mccmnc> carrier config file to include VVM settings
as defined by CarrierXYZ."]

Bug: [Issue ID from Google Issue Tracker]
Test: [Testing notes]

ตัวอย่าง CL

โปรดดู ไฟล์การกำหนดค่าผู้ให้บริการที่อัปเดตสำหรับ CL ตัวอย่าง

ขอรับการตรวจสอบ

หากต้องการขอรับการตรวจสอบ ให้ทำดังนี้

  • ไปที่ URL ของ Gerrit ของการเปลี่ยนแปลงและเพิ่ม android-carrier-config-review@google.com ในฐานะผู้ตรวจสอบ
  • คุณสามารถเพิ่มรายชื่อติดต่อใน Google ลงในรายการ CC ของ Gerrit ได้ด้วย
  • คุณเปลี่ยนผู้ได้รับมอบหมายปัญหาเป็น android-carrier-config-review@google.com

หลังจากที่ส่งข้อมูลผ่านกระบวนการตรวจสอบและยืนยันตัวตนแล้ว Gerrit จะรวมการเปลี่ยนแปลงเข้ากับที่เก็บสาธารณะโดยอัตโนมัติ ผู้ใช้รายอื่น สามารถเรียกใช้ repo sync เพื่อดึงข้อมูลอัปเดตลงในไคลเอ็นต์ในเครื่อง