อุปกรณ์ Android ที่ไม่มียอดคงเหลือของอินเทอร์เน็ตทำให้การจราจรของข้อมูลในเครือข่ายผ่านได้ ซึ่งจำเป็น ผู้ให้บริการขนส่งและบริษัทโทรคมนาคมเพื่อนำโปรโตคอลการบรรเทาปัญหาไปใช้ Android ใช้ โซลูชันทั่วไปที่ช่วยให้ผู้ให้บริการและบริษัทโทรคมนาคมสามารถระบุได้เมื่ออุปกรณ์ หมดแล้ว
แพลตฟอร์ม Android มีแอปของผู้ให้บริการตามค่าเริ่มต้นที่มีลักษณะการทำงานตามค่าเริ่มต้น การลดการรับส่งข้อมูลตามสัญญาณการตรวจจับแคปทีฟพอร์ทัล และยังมี ผู้ให้บริการขนส่งและ OEM มีโอกาสปรับแต่งพฤติกรรมโดยใช้ต้นทุนต่ำ มีความยืดหยุ่นมาก
ตัวอย่างและแหล่งที่มา
แอปของผู้ให้บริการเริ่มต้นจะอยู่ที่ platform/frameworks/base/packages/CarrierDefaultApp/.
การใช้งาน
แอปของผู้ให้บริการเริ่มต้นได้รับการกำหนดค่าเพื่อมอบประสบการณ์การใช้งานที่ดีขึ้นสำหรับ ผู้ให้บริการที่ไม่ได้กำหนดค่าไว้ตั้งแต่แรก ผู้ให้บริการใช้ลักษณะการทำงานเริ่มต้นนี้ได้ และยังลบล้างลักษณะการทำงานเริ่มต้นได้ด้วยการเพิ่มการแมปการกระทำที่ถือเป็นสัญญาณลงใน ในไฟล์ XML การกำหนดค่าผู้ให้บริการ ผู้ใช้เลือกที่จะไม่ใช้แอปเริ่มต้นได้ และ แต่ให้ใช้สิทธิ์ UICC กับแอปของผู้ให้บริการแบบสแตนด์อโลนแทน
แนะนำการใช้งาน
สัญญาณ
เฟรมเวิร์ก Android รองรับการกำหนดค่าการดำเนินการให้มีพารามิเตอร์ต่อไปนี้ สัญญาณ:
TelephonyIntents.ACTION_CARRIER_SIGNAL_REDIRECTED
TelephonyIntents.ACTION_CARRIER_SIGNAL_REQUEST_NETWORK_FAILED
สัญญาณเหล่านี้จะอยู่ใน
frameworks/base/telephony/java/com/android/internal/telephony/TelephonyIntents.java
การดำเนินการที่รองรับ
แอปของผู้ให้บริการเริ่มต้นจะกำหนดชุดการดำเนินการที่รองรับซึ่งแมปได้ด้วย
สัญญาณที่รองรับ ซึ่งมีคำนิยามใน CarrierActionUtils.java
public static final int CARRIER_ACTION_ENABLE_METERED_APNS = 0; public static final int CARRIER_ACTION_DISABLE_METERED_APNS = 1; public static final int CARRIER_ACTION_DISABLE_RADIO = 2; public static final int CARRIER_ACTION_ENABLE_RADIO = 3; public static final int CARRIER_ACTION_SHOW_PORTAL_NOTIFICATION = 4; public static final int CARRIER_ACTION_SHOW_NO_DATA_SERVICE_NOTIFICATION = 5; public static final int CARRIER_ACTION_CANCEL_ALL_NOTIFICATIONS = 6;
หมายเหตุ: หากผู้ให้บริการใช้แอปแบบสแตนด์อโลนของตนเอง สามารถใช้การรองรับสัญญาณอื่นๆ นอกเหนือจากที่กล่าวถึงใน โดยผู้ใช้จะกำหนดและกำหนดค่าการทำงานของตนเองได้เช่นกัน
การแมปการกระทําที่ถือเป็นสัญญาณเริ่มต้น
กำหนดค่าการทำงานเริ่มต้นโดยทำตามกระบวนการนี้:
- กำหนดคีย์สำหรับสัญญาณที่รองรับ
การแมปสัญญาณกับการดำเนินการเริ่มต้นได้รับการกำหนดไว้ใน
CarrierConfigManager.java
สัญญาณที่รองรับแต่ละรายการจะมีคีย์ดังนี้public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_REDIRECTION_STRING_ARRAY = "carrier_default_actions_on_redirection_string_array"; public static final String KEY_CARRIER_DEFAULT_ACTIONS_ON_DCFAILURE_STRING_ARRAY = "carrier_default_actions_on_dcfailure_string_array";
- เชื่อมโยงการดำเนินการเริ่มต้นกับคีย์สัญญาณ
รหัสการดำเนินการเริ่มต้นจะเชื่อมโยงกับคีย์สัญญาณ ดังนี้
sDefaults.putStringArray(KEY_CARRIER_DEFAULT_ACTIONS_ON_REDIRECTION_STRING_ARRAY, new String[]{ "1, 4" //1: CARRIER_ACTION_SHOW_PORTAL_NOTIFICATION // 4: CARRIER_ACTION_DISABLE_METERED_APNS });
เฟรมเวิร์กโทรศัพท์จะแมปการดำเนินการเหล่านี้กับสัญญาณที่เกี่ยวข้อง
ลบล้างการกระทำเริ่มต้น
คุณสามารถกำหนดการทำงานที่กำหนดเองสำหรับสัญญาณที่รองรับใน XML การกำหนดค่าของผู้ให้บริการ
โดยการเชื่อมโยงรหัสการดำเนินการกับคีย์สัญญาณ (ที่กำหนดไว้ใน
CarrierConfigManager.java
) ตัวอย่างเช่น การแมปต่อไปนี้
ปิดใช้ APN ที่มีการวัดปริมาณอินเทอร์เน็ตและแสดงการแจ้งเตือนพอร์ทัลเกี่ยวกับการเปลี่ยนเส้นทาง
<string-array name="carrier_default_actions_on_redirection_string_array" num="2"> <item value="1" /> <item value="4" /> </string-array>
เฟรมเวิร์กโทรศัพท์จะโหลดการกำหนดค่าเหล่านี้และลบล้างค่าเริ่มต้น การดำเนินการ
การตรวจสอบความถูกต้อง
ไม่มีการทดสอบ CTS, CTS Verifier หรือ GTS สำหรับฟีเจอร์นี้
ใช้การทดสอบความถูกต้องด้วยตนเองต่อไปนี้เพื่อตรวจสอบฟีเจอร์
- ตรวจสอบการแจ้งเตือนสัญญาณไม่สมดุลของอุปกรณ์โทรคมนาคม
- ตรวจสอบการควบคุมการเปลี่ยนเส้นทางการเข้าชมระหว่างสถานะไม่สมดุลและ Wi-Fi ปิดอยู่
- ตรวจสอบว่าการจราจรของข้อมูลในเครือข่ายปิดอยู่ และมี UI การแจ้งเตือนปรากฏขึ้นระหว่างที่ออกจากระบบ ของสถานะความสมดุล
- ตรวจสอบฟังก์ชันการโทรด้วยเสียง/VoLTE ขณะอยู่ในสถานะไม่สมดุล
- ตรวจสอบว่าวิดีโอคอลถูกบล็อกในสถานะไม่สมดุล
- เมื่อเปิด Wi-Fi ให้ยืนยันว่าผู้ใช้จะเรียกดูเว็บและท่องเว็บต่อได้ การจราจรของข้อมูลไม่เปิดการจราจรของข้อมูลในเครือข่ายในขณะที่ไม่สมดุล
- ตรวจสอบฟังก์ชัน Wi-Fi, WFC และบลูทูธในระหว่างที่สัญญาณไม่สมดุล
- ปิด Wi-Fi ตรวจสอบ UI ของการแจ้งเตือนที่ไม่สมดุล และดูว่า การเข้าชมเว็บไซต์จะไม่ถูกเปลี่ยนเส้นทางไปยังเว็บไซต์การลงทะเบียนโทรคมนาคม ยืนยัน การคลิกลิงก์ใน UI การแจ้งเตือนจะนำเบราว์เซอร์ไปยังผู้ให้บริการโทรศัพท์มือถือ เว็บไซต์ลงทะเบียน
- ตรวจสอบว่าการสลับโหมดบนเครื่องบินไม่รีเซ็ตการควบคุมการจราจร
- ตรวจสอบว่าการสลับซิมที่ใช้งานจะรีเซ็ตการจราจรของข้อมูลในเครือข่าย
- ตรวจสอบว่าการใส่ซิมที่ไม่สมดุลอีกครั้งจะเป็นการรีสตาร์ทการเปลี่ยนเส้นทางการรับส่งข้อมูล และรับการควบคุมการจราจรของข้อมูลในเครือข่ายอีกครั้ง
- ตรวจสอบว่าการรีบูตโทรศัพท์จะเปิดใช้งานการเปลี่ยนเส้นทางอีกครั้งและนำ UI การแจ้งเตือนและตัวควบคุมการรับส่งข้อมูล
- แตะที่ "แคปทีฟพอร์ทัล" การแจ้งเตือน ยืนยันเครือข่ายที่ถูกจำกัด สร้างการเชื่อมต่อเพื่อให้ผู้ใช้เพิ่มเครดิตได้
- ตรวจสอบว่าการเติมยอดคงเหลือของซิมหรือการเปิดใช้งานอีกครั้งทำให้เกิดปัญหาของเครือข่ายมือถือ การเข้าชมที่จะกู้คืน และลิงก์ Telco และไม่มีการแจ้งเตือนยอดคงเหลือให้ไป ได้เลย
- การทดสอบความเรียบร้อยหลังจากการกู้คืนบริการข้อมูล
แอปเริ่มต้นจะแสดงตัวอย่าง 2-3 รายการของการทดสอบ 1 หน่วยและสคริปต์สำหรับทำการทดสอบ
(ดู tests/runtest.sh
) เมื่อคุณใช้งานเวอร์ชันที่กำหนดเองหรือ
คุณควรมิเรอร์การปรับแต่งเหล่านั้นไว้ในการทดสอบ 1 หน่วยโดยเฉพาะ