У меня проблема с android-build-version pre 28 / Orio, установленный будильник не работает только после разблокировки дисплея устройства.
Есть ли способ решить эту проблему, кто-то может мне помочь?
заблокируйте мой код:
fun setAlarm(ctxt: Context, id: Int, hour: Int, minute: Int,
nameOfAlarm: String = "",
startDateFormatted: Any? = null,
index: Int = -1) {
val alarmMgr: AlarmManager?
val alarmIntent: PendingIntent?
alarmMgr = ctxt.getSystemService(Context.ALARM_SERVICE) as AlarmManager
val intent = Intent(ctxt, PlayerReceiver::class.java)
intent.putExtra("index", index)
alarmIntent = PendingIntent.getBroadcast(ctxt, id, intent, 0)
val calendar = Calendar.getInstance()
calendar.timeInMillis = System.currentTimeMillis()
calendar.set(Calendar.HOUR_OF_DAY, hour)
calendar.set(Calendar.MINUTE, minute)
calendar.set(Calendar.SECOND, 0)
alarmMgr.set(AlarmManager.RTC_WAKEUP, calendar.timeInMillis, alarmIntent)
if (nameOfAlarm != "" && startDateFormatted != null){
val hour: Int = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
(startDateFormatted as LocalDateTime).hour
}else{
(startDateFormatted as Date).hours
}
val minute: Int = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
(startDateFormatted as LocalDateTime).minute
}else{
(startDateFormatted as Date).minutes
}
println("✓ ${nameOfAlarm} was set at ${hour}:${minute} today")
}
}