อินเทอร์เฟซผู้ใช้สำหรับการเชื่อมต่อ

ใน Android 12 ขึ้นไป ผู้ผลิตอุปกรณ์สามารถเลือกใช้ประสบการณ์การเชื่อมต่อที่เรียบง่ายซึ่งจะช่วยให้ผู้ใช้เข้าใจการเชื่อมต่อเครือข่าย เปลี่ยนผู้ให้บริการอินเทอร์เน็ต และแก้ปัญหาการเชื่อมต่อเครือข่ายได้ดียิ่งขึ้น การเปลี่ยนแปลงประสบการณ์ของผู้ใช้เหล่านี้เมื่อเทียบกับ Android 11 หรือต่ำกว่านั้น จะปรากฏในอินเทอร์เฟซผู้ใช้ ไอคอน และการเปลี่ยนแปลง API สำหรับการตั้งค่าด่วนและการตั้งค่าด่วน การเปลี่ยนแปลงทั้งหมดเหล่านี้มีอยู่ใน AOSP เพื่อให้ผู้ผลิตอุปกรณ์เปิดใช้ตามที่เป็นอยู่หรือปรับแต่ง

ภาพรวมประสบการณ์การเชื่อมต่อที่ง่ายขึ้น

ส่วนนี้จะอธิบายการเปลี่ยนแปลงที่สำคัญของอินเทอร์เฟซผู้ใช้สำหรับประสบการณ์การเชื่อมต่อที่เรียบง่ายใน AOSP ตั้งแต่ Android 12

ไทล์อินเทอร์เน็ตในการตั้งค่าด่วน

เมนูการตั้งค่าด่วนจะมีการ์ดอินเทอร์เน็ตที่เปิดแผงอินเทอร์เน็ตซึ่งผู้ใช้สลับระหว่างการเชื่อมต่อ Wi-Fi กับการเชื่อมต่อมือถือได้ การ์ดอินเทอร์เน็ตจะรวมการ์ด Wi-Fi และอินเทอร์เน็ตมือถือที่ใช้ใน Android 11 หรือต่ำกว่า

การ์ดอินเทอร์เน็ตในเมนูการตั้งค่าด่วน

รูปที่ 1 การ์ดอินเทอร์เน็ตในการตั้งค่าด่วน

ส่วนการโทรและ SMS ในการตั้งค่า

แอปการตั้งค่ามีส่วนการโทรและ SMS ในส่วนเครือข่ายและอินเทอร์เน็ต ซึ่งจะแสดงสถานะความพร้อมใช้งานและตัวเลือกการโทรผ่าน Wi-Fi

ส่วนการโทรและ SMS ในการตั้งค่า

รูปที่ 2 ส่วนการโทรและ SMS ในการตั้งค่า

ปุ่มรีเซ็ตในการตั้งค่า

ในแอปการตั้งค่า เครือข่ายและอินเทอร์เน็ต > อินเทอร์เน็ต จะมีปุ่มรีเซ็ตที่ช่วยให้ผู้ใช้รีเซ็ตโมเด็มโทรศัพท์และ Wi-Fi ในอุปกรณ์ได้ ซึ่งอาจมีประโยชน์เมื่อแก้ปัญหาการเชื่อมต่อเครือข่าย

ปุ่มรีเซ็ตในการตั้งค่าเพื่อแก้ปัญหาการเชื่อมต่อ

รูปที่ 3 ปุ่มรีเซ็ตสำหรับการแก้ปัญหาการเชื่อมต่อ

การใช้งาน

หากต้องการเปิดใช้ประสบการณ์การเชื่อมต่อที่ง่ายขึ้นในอุปกรณ์ ให้ใช้ Flag การตั้งค่าส่วนกลางต่อไปนี้

  • ชื่อ: persist.sys.fflag.override.settings_provider_model
  • ประเภท: บูลีน
  • ค่า: ตั้งค่าเป็น true เพื่อเปิดใช้ลักษณะการทํางานแบบลดความซับซ้อนของการเชื่อมต่อ หรือตั้งค่าเป็น false เพื่อปิดใช้และกลับไปใช้ลักษณะการทํางานเดิม ตั้งแต่ Android 12 เป็นต้นไป โค้ดพาธของ false จะไม่ได้รับการบำรุงรักษาอย่างต่อเนื่องอีกต่อไป

นอกจากนี้ คุณยังกำหนดค่าโหมดต่อไปนี้ของอินเทอร์เฟซผู้ใช้สำหรับผู้ให้บริการแต่ละรายได้โดยใช้การกำหนดค่าผู้ให้บริการ คีย์การกำหนดค่ามีดังนี้

  • CarrierConfigManager#KEY_CARRIER_PROVISIONS_WIFI_MERGED_NETWORKS_BOOL: บูลีนซึ่งระบุว่าผู้ให้บริการกําหนดค่าเครือข่าย Wi-Fi ที่เป็นส่วนหนึ่งของเครือข่ายหลักและแสดงเป็นส่วนหนึ่งของเครือข่ายมือถือหรือไม่ ซึ่งจะทํางานควบคู่ไปกับวิธี WifiNetworkSuggestion.Builder#setCarrierMerged(booleanisCarrierMerged)
  • CarrierConfigManager#KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL: บูลีนที่ระบุว่าจะใช้การเชื่อมต่อเครือข่ายข้อมูล (IP) เป็นเงื่อนไขเสริมในการกั้นปิดการแสดงไอคอนไม่มีการโทรหรือไม่
  • CarrierConfigManager#KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL: บูลีนซึ่งระบุว่าไอคอนคุณภาพสัญญาณการโทรจะแสดงใน UI ของระบบหรือไม่

Framework API

หากต้องการปิดใช้เครือข่าย Wi-Fi ใกล้เคียงชั่วคราว ให้ใช้ API ต่อไปนี้

  • WifiManager#startRestrictingAutoJoinToSubscriptionId(int subscriptionId): อนุญาตให้ผู้ใช้เลือกเครือข่ายของผู้ให้บริการโดยไม่ต้องปิดใช้ Wi-Fi ปิดใช้เครือข่าย Wi-Fi ที่มองเห็นได้ทั้งหมดเป็นระยะเวลาขั้นต่ำ 30 นาที (ควบคุมผ่านconfig_wifiAllNonCarrierMergedWifiMinDisableDurationMinutesการวางซ้อน) และสูงสุด 6 ชั่วโมง (ควบคุมผ่านconfig_wifiAllNonCarrierMergedWifiMaxDisableDurationMinutesการวางซ้อน) ระบบจะเปิดใช้เครือข่าย Wi-Fi อีกครั้งทุกครั้งที่เปิด/ปิด Wi-Fi, รีบูตอุปกรณ์, ผู้ใช้เลือกเครือข่าย Wi-Fi (ซึ่งในกรณีนี้การตั้งค่าจะเรียกใช้ stopRestrictingAutoJoinToSubscriptionId() API) หรือหากไม่เห็นเครือข่ายเป็นเวลา 60 นาที
  • WifiManager#stopRestrictingAutoJoinToSubscriptionId(): กู้คืนการทํางานตามปกติ

หากต้องการรองรับปุ่มรีเซ็ตและการแก้ปัญหาอินเทอร์เฟซผู้ใช้ซึ่งใช้ในคลาส com.android.settingslib.connectivity.ConnectivitySubsystemsRecoveryManager ให้ใช้ API ต่อไปนี้

  • WifiManager#restartWifiSubsystem(String reason): รีสตาร์ทระบบย่อย Wi-Fi
  • TelephonyManager#rebootRadio(): รีเซ็ตโมเด็มวิทยุ

ทำงานร่วมกับผู้ให้บริการหลายราย

หากคุณใช้ประสบการณ์การเชื่อมต่อที่เรียบง่ายสำหรับผู้ให้บริการบางราย แต่ไม่ได้ใช้กับผู้ให้บริการรายอื่น โปรดคำนึงถึงสถานการณ์ที่มีซิมหลายใบ ซึ่งผู้ใช้ใช้ซิม 2 ใบ โดย 1 ใบมาจากพาร์ทเนอร์ผู้ให้บริการที่เลือกใช้การเปลี่ยนแปลง UI ส่วนอีกใบไม่ได้ใช้ ในกรณีนี้ โปรดตัดสินใจว่าผู้ใช้จะเห็น UI ใดและทดสอบลักษณะการทำงานในอุปกรณ์ของคุณอย่างละเอียด