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