แอปพลิเคชั่นนาฬิกาจับเวลาที่เรียบง่ายพร้อมการเขียนเจ็ทแพ็คโดยใช้บริการเบื้องหน้าและที่ถูกผูกไว้
ตรวจสอบ YouTube เพื่อดูวิดีโอการสอนที่สมบูรณ์
แอปพลิเคชั่นนี้โดยพื้นฐานประกอบด้วยหน่วยข้อความ 3 หน่วยที่แตกต่างกันซึ่งแสดงถึงชั่วโมง นาที และวินาที นอกจากนี้เรายังมีปุ่มสองปุ่มบน UI ปุ่มแรกจะเปลี่ยนไปตามสถานะการบริการ และปุ่มที่สองจะทำให้เราสามารถยกเลิกบริการเบื้องหน้า ซึ่งจะส่งผลให้มีการรีเซ็ตนาฬิกาจับเวลาของเรา
คุณสามารถควบคุมนาฬิกาจับเวลาได้ด้วยปุ่ม UI หรือแผงการแจ้งเตือน ในขณะที่เรากำลังใช้บริการ ดังนั้นหากเราปิดแอปพลิเคชัน เราก็สามารถติดตามสถานะนาฬิกาจับเวลาได้จากแผงการแจ้งเตือน
Hilt เป็นไลบรารีการพึ่งพาการฉีดสำหรับ Android ที่ช่วยลดความจำเป็นในการทำการฉีดการพึ่งพาแบบแมนนวลในโปรเจ็กต์ของคุณ การดำเนินการฉีดการขึ้นต่อกันแบบแมนนวลต้องการให้คุณสร้างทุกคลาสและการขึ้นต่อกันของคลาสด้วยมือ และใช้คอนเทนเนอร์เพื่อนำกลับมาใช้ใหม่และจัดการการขึ้นต่อกัน
Hilt มอบวิธีมาตรฐานในการใช้ DI ในแอปพลิเคชันของคุณโดยจัดเตรียมคอนเทนเนอร์สำหรับคลาส Android ทุกคลาสในโปรเจ็กต์ของคุณและจัดการวงจรการใช้งานโดยอัตโนมัติ Hilt ถูกสร้างขึ้นบนไลบรารี DI ยอดนิยม Dagger เพื่อได้รับประโยชน์จากความถูกต้องของเวลาคอมไพล์ ประสิทธิภาพรันไทม์ ความสามารถในการปรับขนาด และการรองรับ Android Studio ที่ Dagger มอบให้
บริการที่ถูกผูกไว้คือการใช้งานคลาสบริการที่อนุญาตให้แอปพลิเคชันอื่นผูกและโต้ตอบกับบริการนั้น หากต้องการจัดให้มีการเชื่อมโยงบริการ คุณต้องใช้เมธอดโทรกลับ onBind() เมธอดนี้ส่งคืนออบเจ็กต์ IBinder ที่กำหนดอินเทอร์เฟซการเขียนโปรแกรมที่ไคลเอ็นต์สามารถใช้เพื่อโต้ตอบกับบริการ
บริการเบื้องหน้าดำเนินการที่ผู้ใช้สังเกตเห็นได้
บริการเบื้องหน้าจะแสดงการแจ้งเตือนบนแถบสถานะ เพื่อให้ผู้ใช้รับทราบว่าแอปของคุณกำลังทำงานอยู่เบื้องหน้าและใช้ทรัพยากรระบบ
อุปกรณ์ที่ใช้ Android 12 (API ระดับ 31) ขึ้นไปมอบประสบการณ์ที่มีประสิทธิภาพยิ่งขึ้นสำหรับบริการเบื้องหน้าที่ทำงานระยะสั้น บนอุปกรณ์เหล่านี้ ระบบจะรอ 10 วินาทีก่อนที่จะแสดงการแจ้งเตือนที่เกี่ยวข้องกับบริการเบื้องหน้า มีข้อยกเว้นบางประการ บริการหลายประเภทจะแสดงการแจ้งเตือนทันทีเสมอ