Notification не работает setOngoing(true)
Написал функцию которая присылает Notification, мне нужно чтобы он висел даже если приложение убито добавил setOngoing(true), на эмуляторах работает без проблем а вот на реальных устройствах на некоторых работает, на некоторых стирается стоит только выйти из приложения. Вот моя функция:
fun setNotification(activity: Activity) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
val name = activity.resources.getString(R.string.app_name)
val importance = NotificationManager.IMPORTANCE_DEFAULT
val channel = NotificationChannel("004", name, importance)
val notificationManager: NotificationManager = activity.getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
notificationManager.createNotificationChannel(channel)
}
val remoteViews = RemoteViews(activity.packageName, R.layout.notification)
remoteViews.setOnClickPendingIntent(R.id.notif_button_1, getNotifIntent(activity, EVENT_1, 1))
remoteViews.setOnClickPendingIntent(R.id.notif_button_2, getNotifIntent(activity, EVENT_2, 2))
remoteViews.setOnClickPendingIntent(R.id.notif_button_3, getNotifIntent(activity, EVENT_3, 3))
remoteViews.setOnClickPendingIntent(R.id.notif_button_4, getNotifIntent(activity, EVENT_4, 4))
val builder = NotificationCompat.Builder(activity, "004").apply {
setSmallIcon(R.mipmap.ic_launcher)
setCustomContentView(remoteViews)
setOngoing(true)
setAutoCancel(false)
}
with(NotificationManagerCompat.from(activity)) {
notify(4, builder.build())
}
}
private fun getNotifIntent(activity: Activity, intentFlag: String, requestCode: Int): PendingIntent? {
val intent = Intent(activity, MainActivity::class.java)
intent.putExtra(intentFlag, "")
intent.action = Intent.ACTION_MAIN
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK or Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_NO_HISTORY)
val pending_event_intent = PendingIntent.getActivity(activity, requestCode, intent, 0)
return pending_event_intent
}
Вызываю в MainActivity:
Notification.setNotification(this)
Подскажите пожалуйста, в чем может быть дело и как можно поправить, знаю что можно, так как видел в других приложениях подобное работало на том же устройстве где у меня удаляется!?