จะตั้งเวลาปลุกอย่างไรในเวลาที่แน่นอนหลังจากข้อ จำกัด ใหม่ล่าสุดทั้งหมดบน Android
หมายเหตุ: ฉันลองใช้วิธีแก้ไขปัญหาต่าง ๆ ที่เขียนเกี่ยวกับที่นี่ใน StackOverflow (ตัวอย่างที่นี่ ) โปรดอย่าปิดสิ่งนี้โดยไม่ตรวจสอบว่าโซลูชันของคุณจากสิ่งที่คุณพบว่าทำงานได้โดยใช้แบบทดสอบที่ฉันเขียนด้านล่าง พื้นหลัง มีความต้องการในแอพที่ผู้ใช้ตั้งเตือนเพื่อกำหนดเวลาในเวลาที่กำหนดดังนั้นเมื่อแอพได้รับการทริกเกอร์ในเวลานี้มันจะทำสิ่งเล็ก ๆ ในพื้นหลัง (เพียงการดำเนินการแบบสอบถาม DB) และแสดง การแจ้งเตือนง่าย ๆ ที่จะบอกเกี่ยวกับการแจ้งเตือน ในอดีตที่ผ่านมาฉันใช้รหัสง่าย ๆ เพื่อกำหนดสิ่งที่จะกำหนดเวลาค่อนข้างเฉพาะ: val alarmManager = context.getSystemService(Context.ALARM_SERVICE) as AlarmManager val pendingIntent = PendingIntent.getBroadcast(context, requestId, Intent(context, AlarmReceiver::class.java), PendingIntent.FLAG_UPDATE_CURRENT) when { VERSION.SDK_INT >= VERSION_CODES.KITKAT -> alarmManager.setExact(AlarmManager.RTC_WAKEUP, timeToTrigger, pendingIntent) else -> alarmManager.set(AlarmManager.RTC_WAKEUP, timeToTrigger, pendingIntent) } …