APN และ CarrierConfig

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

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

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

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

เตรียมสภาพแวดล้อมในการพัฒนาในเครื่อง

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

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

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

  1. ไปที่ issuetracker.google.com แล้วลงชื่อเข้าใช้โดยใช้อีเมลของบริษัท (ดู บัญชี Google ที่ใช้อีเมลของบริษัท)
  2. หลังจากเข้าสู่ระบบแล้ว ให้คลิกสร้างปัญหาทางด้านซ้ายของหน้าจอ
  3. ในคอมโพเนนต์ ให้เลือก 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 ได้ที่ ตัวอย่าง APNs ของ BICS

ไวยากรณ์ CarrierConfig

ชื่อโปรเจ็กต์ - platform/packages/apps/CarrierConfig

ชื่อไฟล์ - assets/carrier_config_.xml (Google Git main link)

ระบุไฟล์ 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 ได้ใน ไฟล์การกำหนดค่าของผู้ให้บริการที่อัปเดตแล้ว

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

วิธีขอรับการตรวจสอบ

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

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