Превышение лимита не может создать больше каналов. Ошибка NotificationManager.Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Превышение лимита не может создать больше каналов. Ошибка NotificationManager.

Сообщение Anonymous »


Я понял

java.lang.IllegalStateException: превышение лимита; не могу создать больше каналов

Когда я проверяю свой код, я вижу, что допустил большую ошибку, используя System.currentTimeMillis() для идентификатора канала. Так есть ли способ удалить старые созданные каналы или другое решение проблемы.
StringchannelId = AndroidVersionUtils.isOreoOrMore() ? getNewNotificationIdString(): context.getString(R.string.app_name); NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); Канал уведомлений mChannel; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { mChannel = новый NotificationChannel (channelId, заголовок, NotificationManager.IMPORTANCE_HIGH); mChannel.setLightColor(Цвет.СЕРЫЙ); mChannel.enableLights(истина); mChannel.setDescription(содержание); AudioAttributes audioAttributes = новый AudioAttributes.Builder() .setContentType(AudioAttributes.CONTENT_TYPE_SONIFICATION) .setUsage(AudioAttributes.USAGE_NOTIFICATION) .строить(); mChannel.setSound(uri, audioAttributes); если (mNotificationManager != ноль) { mNotificationManager.createNotificationChannel(mChannel); } } частная статическая строка getNewNotificationIdString() { return ""+System.currentTimeMillis(); }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»