ผู้ให้บริการสามารถอัปเดตข้อมูลจุดเข้าใช้งาน (APN) และ การตั้งค่ากำหนดเฉพาะผู้ให้บริการ (CarrierConfig) ในโครงการโอเพนซอร์ส Android (AOSP)
บัญชี Google ที่ใช้อีเมลของบริษัท
หากต้องการอัปเดตข้อมูล APN หรือ CarrierConfig คุณต้องมี เพื่อส่งคำขอโดยใช้บัญชี Google ที่มีอีเมลบริษัทที่ใช้งานได้ (ตัวอย่างเช่น คำขออัปเดต APN จาก Acme Company ควรมาจาก เช่น foobar@acme.com)
หากคุณไม่มีบัญชี Google ที่เชื่อมโยงกับอีเมลของบริษัท ให้ออกจากระบบบัญชี Gmail ทั้งหมดจากเบราว์เซอร์ของคุณ (เราขอแนะนำให้ใช้ เช่น หน้าต่างที่ไม่ระบุตัวตนเพื่อไม่ให้เกิดความสับสนกับ บัญชีอื่นของคุณ) จากนั้น สร้างบัญชี Google บัญชีโดยใช้อีเมลของบริษัท
จัดเตรียมสภาพแวดล้อมในการพัฒนาในท้องถิ่น
หากคุณไม่เคยส่งรหัสไปยัง AOSP มาก่อน คุณจะ ต้องเริ่มต้นสภาพแวดล้อมของบิลด์ ทำความคุ้นเคยกับเครื่องมือ และ ทำความเข้าใจวิธีส่งแพตช์:
นอกจากนี้ เราขอแนะนำให้คุณใช้ เครื่องมือติดตามปัญหาของ Google เพื่อติดตามการเปลี่ยนแปลง
รายงานข้อบกพร่อง
- ไปที่ issuetracker.google.com และลงชื่อเข้าใช้ด้วยอีเมลของบริษัท (โปรดดู บัญชี Google ด้วยอีเมลของบริษัท)
- หลังจากลงชื่อเข้าสู่ระบบแล้ว ให้คลิกสร้างปัญหาทางด้านซ้ายของ บนหน้าจอ
- ในคอมโพเนนต์ ให้เลือก Android Public เครื่องมือติดตาม > เฟรมเวิร์ก
- ไปยังการอัปเดต AAP หรือ การอัปเดต CarrierConfig ตามความเหมาะสม เพื่อป้อนชื่อและคำอธิบาย
ข้อบกพร่อง APN
ตั้งค่าแอตทริบิวต์ของข้อบกพร่องดังนี้
ชื่อ: เพิ่ม/แก้ไข/ลบ APN สำหรับ CarrierXYZ
คำอธิบาย: เพิ่มคำอธิบายการเปลี่ยนแปลงโดยละเอียด ซึ่งรวมถึงการตั้งค่า APN เอง
ข้อบกพร่อง CarrierConfig
ตั้งค่าแอตทริบิวต์ของข้อบกพร่องดังนี้
ชื่อ: การเปลี่ยนแปลงการกำหนดค่าสำหรับ CarrierXYZ
คำอธิบาย: เพิ่มคำอธิบายการเปลี่ยนแปลงโดยละเอียด ที่ขอ
ส่งข้อมูลการเปลี่ยนแปลง
วิธีทำการเปลี่ยนแปลง
- ระบุไฟล์ที่จะเปลี่ยน
- แก้ไขไฟล์
- ดำเนินการเปลี่ยนแปลงที่เก็บในเครื่องของคุณโดยทำตามคำแนะนำ สำหรับ ส่งแพตช์ โดยให้ความสำคัญกับหลักเกณฑ์ข้อความคอมมิต รวมทั้งรูปแบบที่แนะนำ
- หลังจากที่คุณยืนยันการเปลี่ยนแปลงในประวัติส่วนตัวแล้ว ให้อัปโหลดประวัติดังกล่าวไปยัง Gerrit
โดยใช้คำสั่ง
repo upload
- หลังจากอัปโหลดสำเร็จ 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" />
การทดสอบ
- เชื่อมต่ออุปกรณ์ Android เครื่องใดก็ได้ที่คุณมีสิทธิ์เข้าถึงระดับรูท
- เพิ่มการตั้งค่าลงใน /etc/apns-conf.xml
- รีเซ็ตการตั้งค่า APN
- ในการตั้งค่า APN ให้ยืนยันว่าโปรไฟล์โหลดอย่างถูกต้อง
- ทดสอบการเชื่อมต่ออินเทอร์เน็ต, ฮอตสปอต 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 ที่เกี่ยวข้องในโฟลเดอร์เนื้อหาตาม 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
เพื่อดึงข้อมูลอัปเดตลงในไคลเอ็นต์ในเครื่อง