Не показывается нотификация пользователю
Есть приложение, которое отображает пользователю некое уведомление. Нотификация показывается лишь по нажатию на кнопку. Однако, при выполнении даного условия ничего не происходит
Код активити:
class MainActivity : AppCompatActivity() {
private val CHANNEL_ID = "channel_one"
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
button_start_notification.setOnClickListener {
sendNotification()
}
}
private fun sendNotification() {
val notificationLayout = RemoteViews(packageName, R.layout.notification_layout)
val notification = NotificationCompat.Builder(this, CHANNEL_ID)
.setContentTitle(getString(R.string.content_title))
.setSmallIcon(R.drawable.ic_notification_android)
.setStyle(NotificationCompat.DecoratedCustomViewStyle())
.setCustomContentView(notificationLayout)
.setPriority(NotificationCompat.PRIORITY_HIGH)
.build()
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
val channel = NotificationChannel(CHANNEL_ID, "Test Notification",
NotificationManager.IMPORTANCE_HIGH).apply {
description = "This notification is for test"
}
val notificationManager =
getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
notificationManager.createNotificationChannel(channel)
}
with(NotificationManagerCompat.from(this)) {
notify(0, notification)
}
}
}
Ответы (1 шт):
Автор решения: Alex Filonenko
→ Ссылка
Проблема была в этой части кода:
.setStyle(NotificationCompat.DecoratedCustomViewStyle())
.setCustomContentView(notificationLayout)
Скорее всего, кастомизация нотификаций происходит инным путем. Как именно, не известно. Поэтому для работы уведомления указаные строчки я убрал и все начало работать, как нужно.