创建通知时遇到问题。我正在使用AlarmManager安排重复通知。
val requestCode = generateRequestCode(model)
val notificationIntent = Intent(context, ReminderBroadcastReceiver::class.java)
val pendingIntent = PendingIntent.getBroadcast(context, requestCode,
notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT)
val alarmManager = context.getSystemService(Context.ALARM_SERVICE) as AlarmManager
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, Calendar.getInstance().timeInMillis, 60000 /* One minute */, pendingIntent)
这就是我生成请求代码的方式:
fun generateRequestCode(model: Model): Int {
var requestCode = 0
for (char in model.title!!) {
requestCode += char.toInt()
}
return requestCode
}
如果我使用generateRequestCode()函数,并将返回的requestCode传递给pendingIntent,则不会显示该通知,另一方面,如果我在pendingIntent中将1
硬编码为requestCode,它将显示通知。
为什么会这样?我想念什么?