APN และ CarrierConfig

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

ตัวอย่าง CL

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

ไวยากรณ์ CarrierConfig

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

ชื่อไฟล์ - สินทรัพย์/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

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

ขอคำวิจารณ์

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

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

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