Android 16 ขอแนะนำเทมเพลตการแจ้งเตือนใหม่ที่จะช่วยให้ผู้ใช้ติดตามเส้นทางตั้งแต่ต้นจนจบที่ผู้ใช้เป็นผู้เริ่มได้อย่างราบรื่น การแจ้งเตือนเหล่านี้มีการแสดงผลที่ได้รับการอัปเกรดบนพื้นผิวของระบบและมีการจัดอันดับสูงสุดในแผงการแจ้งเตือน
ใช้ Notification.ProgressStyle เพื่อจัดรูปแบบการแจ้งเตือนแบบเน้นความคืบหน้า
กรณีการใช้งานหลักๆ ได้แก่ บริการร่วมเดินทาง บริการจัดส่ง และการนำทาง ภายในคลาสนี้ คุณสามารถระบุสถานะและเหตุการณ์สำคัญในเส้นทางของผู้ใช้ได้โดยใช้จุดและส่วน
คลาสที่เกี่ยวข้อง
คลาสต่อไปนี้มี API ต่างๆ ที่คุณใช้สร้างการแจ้งเตือน ProgressStyle
กายวิภาคศาสตร์และการปรับแต่ง
รูปภาพต่อไปนี้แสดงส่วนต่างๆ ที่ประกอบขึ้นเป็นการแจ้งเตือน ProgressStyle
ก. ส่วนหัว - ข้อความย่อย |
|
ข. ส่วนหัว - เวลา |
|
ค. ชื่อเนื้อหา |
|
ง. ข้อความเนื้อหา |
|
จ. แถบความคืบหน้า |
|
ฉ. ปุ่มดำเนินการ |
แนวทางปฏิบัติแนะนำ
ใช้ API ที่เหมาะสมและทำตามแนวทางปฏิบัติแนะนำเพื่อมอบประสบการณ์การใช้งานที่ดีที่สุดแก่ผู้ใช้สำหรับการอัปเดตความคืบหน้า
- ตั้งค่าช่องที่เหมาะสมเพื่อให้มีการแสดงผลที่ได้รับการโปรโมตในแผงการแจ้งเตือน
- ใช้องค์ประกอบภาพที่เหมาะสมเพื่อแนะนำผู้ใช้ เช่น แอปบริการร่วมเดินทาง
ควรตั้งค่ารูปภาพยานพาหนะและใช้สีที่แม่นยำที่สุดของยานพาหนะใน
การแจ้งเตือนโดยใช้
Notification#setLargeIcon - ใช้ภาษาที่สั้นกระชับและชัดเจนเพื่อกำหนดความคืบหน้าของเส้นทางของผู้ใช้ เวลาที่มาถึง ชื่อคนขับ และสถานะของเส้นทางเป็นข้อความสำคัญที่การแจ้งเตือนควรสื่อสาร
- แสดงการดำเนินการที่เป็นประโยชน์และเกี่ยวข้องในการแจ้งเตือนซึ่งช่วยให้เส้นทางของผู้ใช้ราบรื่นขึ้น เช่น การแสดง "ให้ทิป" และ "เพิ่มจาน" สำหรับคำสั่งซื้ออาหารที่เพิ่งเริ่มต้นเป็นดำเนินการที่เป็นประโยชน์ก่อนการจัดส่ง
- ใช้ส่วนและจุดเพื่อระบุสถานะ เช่น ส่วนสามารถระบุสีสถานะและระยะเวลาของการจราจรในเส้นทางบริการร่วมเดินทาง จุดแสดงสถานะสำหรับเหตุการณ์สำคัญ เช่น การเตรียมอาหาร การจัดส่ง และการรับผู้โดยสาร
- อัปเดตประสบการณ์การใช้งานความคืบหน้าเพื่อให้สะท้อนถึงความคืบหน้าจริงของเส้นทางได้อย่างแม่นยำ เช่น การเปลี่ยนแปลงสภาพการจราจรสามารถแสดงให้เห็นได้จากการเปลี่ยนแปลงสีของส่วนและการอัปเดตข้อความ
ข้อมูลโค้ดต่อไปนี้แสดงวิธีใช้การแจ้งเตือน ProgressStyle ในบริบทของบริการร่วมเดินทาง
var ps =
Notification.ProgressStyle()
.setStyledByProgress(false)
.setProgress(456)
.setProgressTrackerIcon(Icon.createWithResource(appContext, R.drawable.ic_car_red))
.setProgressSegments(
listOf(
Notification.ProgressStyle.Segment(41).setColor(Color.BLACK),
Notification.ProgressStyle.Segment(552).setColor(Color.YELLOW),
Notification.ProgressStyle.Segment(253).setColor(Color.WHITE),
Notification.ProgressStyle.Segment(94).setColor(Color.BLUE)
)
)
.setProgressPoints(
listOf(
Notification.ProgressStyle.Point(60).setColor(Color.RED),
Notification.ProgressStyle.Point(560).setColor(Color.GREEN)
)
)
ดูแอปตัวอย่างเพื่อทดลองใช้ API เหล่านี้