รายละเอียดทางเทคนิค

แผนภาพต่อไปนี้แสดงส่วนประกอบของระบบที่โต้ตอบกับ Dialer:

ส่วนประกอบที่โต้ตอบกับ Dialer

รูปที่ 1. ส่วนประกอบที่โต้ตอบกับ Dialer

  • UI ของระบบ ด้านการนำทางด้านล่างเพื่อโฮสต์ปุ่มโทรศัพท์ ซึ่งจะบันทึก intent:#Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;package=com.android.car.dialer;launchFlags=0x10000000;end ความตั้งใจ สิ่งนี้จะเริ่มต้นกิจกรรมหลักของผู้ใช้ TelecomActivity

  • เครื่องเรียกใช้งานแอป จัดการรายการแอปทั้งหมด Dialer ประกาศ TelecomActivity ด้วย android.intent.category.LAUNCHER การเลือกแอปโทรศัพท์จากรายการแอปของ Launcher จะแสดง TelecomActivity

  • วิดเจ็ตหน้าแรก ในการอ้างอิง AOSP ไม่มีวิดเจ็ตหน้าแรก OEM อาจต้องการพิจารณาเพิ่มวิดเจ็ต Home สำหรับ Dialer เพื่อแสดงสถานะของโทรศัพท์ที่เชื่อมต่อในปัจจุบัน (รวมถึงข้อมูลอื่น ๆ )

  • ศูนย์แจ้งเตือน

    • Heads Up Alert (HUN) จะปรากฏขึ้นเมื่อมีสายเรียกเข้า เมื่อ Dialer InCallServiceImpl รับสายเรียกเข้า Dialer จะโพสต์ HUN ไปที่ศูนย์การแจ้งเตือน ซึ่งจะแสดงรายละเอียดการโทร เช่น หมายเลขโทรศัพท์หรือข้อมูลการติดต่อ ตัวเรียกเลขหมายยังแสดงปุ่มการทำงานสองปุ่ม ได้แก่ รับสายและปฏิเสธ เมื่อแตะปุ่มรับสาย ระบบจะรับสายและ InCallServiceImpl จะจัดการสายที่ใช้งานอยู่เพื่อแสดง UI การโทรของผู้โทรออก และปิด HUN การคลิกที่ HUN จะแสดงหน้า InCall แบบเต็มหน้าจอพร้อมปุ่มรับสายและปฏิเสธ

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

  • ผู้ช่วย. ผู้ใช้สามารถขอให้ผู้ช่วยโทรออกซึ่งอาจแสดงอินเทอร์เฟซผู้ใช้ Dialer InCall

  • Google Maps. การโทรหาผู้ขายจาก Google Maps จะส่งเจตนา DIAL พร้อมหมายเลขโทรศัพท์พิเศษ ซึ่งจะเริ่มหน้าแป้นกดหมายเลขเพื่อการโทรด่วน

  • บริการป้อนข้อมูลรถยนต์ ตรวจสอบปุ่มทางกายภาพของปุ่มโทรออกและวางสายบนพวงมาลัย การกด:

    • ปุ่มโทรออกจากพวงมาลัยเมื่อไม่มีสายเรียกเข้า จะส่งเจตนา DIAL และแสดงหน้าแป้นกดของ Dialer

    • ปุ่มโทรออกจากพวงมาลัยเมื่อมีสายเรียกเข้าทำให้ TelecomManager รับสาย

    • ปุ่มวางสายจากพวงมาลัยเมื่อมีสายเรียกเข้า TelecomManager จะวางสาย

  • บลูทู ธ

    • PBAPClient. ดาวน์โหลดรายชื่อจากโทรศัพท์และเขียนไปยังผู้ให้บริการรายชื่อ สำหรับโทรศัพท์แต่ละเครื่องที่เชื่อมต่อ บัญชีจะถูกสร้างขึ้นโดยมีที่อยู่ MAC ของ Bluetooth ของอุปกรณ์เป็นชื่อบัญชี และ com.android.bluetooth.pbapsink ( @string/pbap_account_type กำหนดใน packages/apps/Bluetooth ) เป็นประเภทบัญชี รายชื่อติดต่อที่เขียนถึงผู้ให้บริการรายชื่อจะถูกเขียนพร้อมข้อมูลบัญชี และจะถูกล้างเมื่อตัดการเชื่อมต่อโทรศัพท์ PBAPClient ไม่ได้โต้ตอบโดยตรงกับ Dialer แต่เขียนรายชื่อติดต่อไปยังผู้ให้บริการรายชื่อแทน Dialer อ่านรายชื่อจากผู้ให้บริการรายชื่อ

    • HfpClientConnectionService จัดการการโทร Bluetooth ผ่าน HFP และรายงานการโทรไปยังบริการโทรคมนาคม

  • โทรคมนาคม. กรอบงาน Android Telecom จัดการการโทรด้วยเสียงและวิดีโอบนอุปกรณ์ Android เนื่องจาก Dialer เป็นแอปโทรศัพท์เริ่มต้น จึงใช้ InCallService API และ InCallController จะผูกการใช้งาน InCallService ของ Dialer เพื่อจัดการการโทร สำหรับรายละเอียดเพิ่มเติม โปรดดู สร้างแอปโทรศัพท์ทดแทน และ การเป็นแอปโทรศัพท์เริ่มต้น

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

  • เครื่องยนต์เบี่ยงเบนความสนใจของคนขับ บริการระบบ Android นี้กำหนดข้อจำกัด UX โดยขึ้นอยู่กับสถานะการขับขี่ของรถ Dialer จะต้องดำเนินการตามข้อจำกัดการเบี่ยงเบนความสนใจในการขับขี่ UX ทั้งหมด ในการทำเช่นนั้น Dialer จะต้องฟัง CarUXRestrictionManager และใช้นโยบายทั้งหมด ผู้โทรออกจะต้อง:

    • เชื่อมต่อกับห้องสมุด Car และรับอินสแตนซ์ของ CarUXRestrictionManager

    • สมัครรับข้อมูลอัปเดตในรายการ CarUxRestrictions และนำไปใช้ตามที่ระบุไว้

    • ความสำคัญเป็นพิเศษต่อ Dialer:

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

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

      • ผู้ใช้ไม่สามารถเริ่มขั้นตอนเพิ่มรายการโปรดขณะขับรถได้ ปุ่มเพิ่มรายการโปรดถูกปิดใช้งาน

กระแสผู้ใช้

ตัวเรียกเลขหมายหลัก

หน้าต่างๆ สำหรับ Dialer มีดังต่อไปนี้

หน้าผู้โทรหลัก

รูปที่ 2 หน้าตัวเรียกเลขหมายหลัก

การจัดการการโทร

ขั้นตอนกระบวนการโอนสายมีดังต่อไปนี้:

การจัดการการโทร

รูปที่ 3 การจัดการการโทร

การแจ้งเตือน

หน้าการแจ้งเตือนต่างๆ จะแสดงอยู่ด้านล่าง:

การแจ้งเตือน

รูปที่ 4 การแจ้งเตือน

สถานะการโทร

โฟลว์เพจ InCall แสดงอยู่ด้านล่าง:

เพจอินโทร

รูปที่ 5 หน้า InCall

การแสดงการค้นหาคือ:

ค้นหา

รูปที่ 6 ค้นหา

การตั้งค่า

ตัวเลือกการตั้งค่าคือ:

การตั้งค่า

รูปที่ 7 การตั้งค่า