Android Kotlin: no se puede progtwigr la notificación para una date futura con el administrador de alarmas

Tengo un código de kotlin para progtwigr una notificación de Android. Así es como se ve mi código

 @Throws(ParseException::class) fun scheduleNotification(context: Context, info: Info) { val notificationIntent = Intent(context, NotificationPublisher::class.java) notificationIntent.putExtra(NotificationPublisher.NOTIFICATION_ID, System.currentTimeMillis()) notificationIntent.putExtra(NotificationPublisher.NOTIFICATION, getNotification(context, info)) val pendingIntent = PendingIntent.getBroadcast(context, 0, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT) val date = Utils.sdfWithTime.parse(String.format("%s %s", info.date, // yyyy-MM-dd format info.status)) // HH:mm format val delay = ShanetworkingPreferenceUtils.getPreferenceValueInteger(context, PreferenceKeys.alarmDelayPref) // date is in UTC val futureInMillis = date.time - delay * 60 * 60 * 1000 Log.d(TAG, "Schedule a notification for $info at $futureInMillis") val alarmManager = context.getSystemService(Context.ALARM_SERVICE) as AlarmManager alarmManager.set(AlarmManager.RTC_WAKEUP, futureInMillis, pendingIntent) } fun getNotification(context: Context, info: Info): Notification { val builder = Notification.Builder(context) builder.setContentTitle("Time time - ${info.title}") val content = String.format("${info.content}") builder.setContentText(content) builder.setSmallIcon(R.drawable.logo) return builder.build() } 

Esto es lo que mi AndroidManifest.xml contiene

  <receiver android:name="com.agents.of.shield.coulson.NotificationPublisher" android:enabled="true" /> 

Y mi receptor de transmisión de notifications

 class NotificationPublisher : BroadcastReceiver() { override fun onReceive(context: Context, intent: Intent) { val notificationManager = context.getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager val notification = intent.getParcelableExtra<Notification>(NOTIFICATION) Log.i(NotificationPublisher.javaClass.name, "Notification" + notification) val id = intent.getLongExtra(NOTIFICATION_ID, 0L) notificationManager.notify(id.toInt(), notification) } companion object { var NOTIFICATION_ID = "notification-id" var NOTIFICATION = "notification" } } 

La notification no se progtwig cuando uso el service alarmManager .

¿Qué crees que estoy haciendo mal aquí?

El indicador AlarmManager.RTC_WAKEUP necesita el time para establecerse en UTC y lo activará cuando se apague.