Kotlin AlarmManager和BroadcastReceiver无法正常工作

我试图用AlarmManager设置闹钟,但我的BroadcastReceiver从来没有被调用。 这是我的片段。

val receiver = object : BroadcastReceiver() { override fun onReceive(context: Context, intent: Intent) { //Never gets hit } } context.registerReceiver(receiver, IntentFilter(LOCAL_NOTIFICATION)) val intent = Intent() intent.action = LOCAL_NOTIFICATION val alarmManager = context.getSystemService(ALARM_SERVICE) as? AlarmManager val pendingIntent = PendingIntent.getService(context, 1, intent, PendingIntent.FLAG_UPDATE_CURRENT) val calendar = Calendar.getInstance() calendar.add(Calendar.SECOND, 10) alarmManager?.set(AlarmManager.RTC_WAKEUP, calendar.timeInMillis, pendingIntent) 

我试过在AndroidManifest.xml中注册一个广播接收器,但似乎没有任何工作。

我只注意到我在PendingIntent上调用getService()而不是getBroadcast()

改变之后,它完美的工作!