APN และ CarrierConfig

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

บัญชี Google พร้อมที่อยู่อีเมลบริษัทของคุณ

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

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

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

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

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

แจ้งข้อบกพร่อง

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

ข้อผิดพลาด APN

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

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

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

ข้อผิดพลาด CarrierConfig

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

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

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

ส่งการเปลี่ยนแปลง

หากต้องการเปลี่ยนแปลง:

  1. ระบุไฟล์ที่จะเปลี่ยนแปลง
  2. ทำการเปลี่ยนแปลงไฟล์
  3. คอมมิตการเปลี่ยนแปลงกับพื้นที่เก็บข้อมูลในเครื่องของคุณโดยทำตามคำแนะนำใน การส่งแพตช์ โดยให้ความสนใจกับหลักเกณฑ์ข้อความคอมมิต รวมถึงรูปแบบที่แนะนำ
  4. หลังจากที่คุณยืนยันการเปลี่ยนแปลงประวัติส่วนตัวของคุณแล้ว ให้อัปโหลดไปที่ Gerrit โดยใช้คำสั่ง repo upload
  5. หลังจากการอัปโหลดสำเร็จ repo จะระบุ URL ของเพจใหม่ใน Gerrit ใช้ 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

ตัวอย่างซีแอล

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

ไวยากรณ์ CarrierConfig

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

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

ระบุไฟล์ XML ที่เกี่ยวข้องในโฟลเดอร์ทรัพย์สินโดยสิ่งอันดับ MCC/MNC ที่เกี่ยวข้อง ไฟล์นี้มีออบเจ็กต์การกำหนดค่าของผู้ให้บริการในรูปแบบ 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

ขอรับการตรวจทาน

หากต้องการขอรับการตรวจทาน:

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

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