Превышение лимита не может создать больше каналов. Ошибка NotificationManager. ⇐ JAVA
Превышение лимита не может создать больше каналов. Ошибка NotificationManager.
Я понял
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(); }
Я понял
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(); }
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Превышение лимита не может создать больше каналов. Ошибка NotificationManager.
Anonymous » » в форуме Android - 0 Ответы
- 78 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Обработка ошибки Scopus400Error в пиблиометрии: превышение максимального лимита запросов
Anonymous » » в форуме Jquery - 0 Ответы
- 50 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как предотвратить превышение лимита овердрафта в классе Java CheckingAccount?
Anonymous » » в форуме JAVA - 0 Ответы
- 21 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как предотвратить превышение лимита овердрафта в классе Java CheckingAccount?
Anonymous » » в форуме JAVA - 0 Ответы
- 19 Просмотры
-
Последнее сообщение Anonymous
-