📰 Telegram канал с полезными материалами для Android разработчиков ttttt.me/android_broadcast 💰 Поддержать проект через Boosty boosty.to/androidbroadcast или Patreon bit.ly/2TBOzlu
@maxsimpleapps4 жыл бұрын
Спасибо большое, как всегда годнота 😊 Эх, нам бы в эфире побольше таких ребят, как Кирилл и жизнь бы проще стала на порядок.
@AndroidBroadcast4 жыл бұрын
Спасибо
@danieldefo78014 жыл бұрын
Спасибо! Информативно. Хочется еще!
@AndroidBroadcast4 жыл бұрын
Примерно через неделю будет новый выпуск. Просто как избавить от try-catch для асинхронных операций
@valeryklachkov70624 жыл бұрын
Кирилл, спасибо за библиотеку! Вчера заиспользовал в своём проекте и очень доволен. Приятная библиотека, хорошая работа была проделана. Единственное, что неочевидно - каналы уведомлений всё так же приходится создавать руками
@AndroidBroadcast4 жыл бұрын
Буду рад услышать обратную связь. Библиотека все еще в разработке, могут быть баги
@rustamsitdikov4 жыл бұрын
Большое спасибо за интересный выпуск!
@AndroidBroadcast4 жыл бұрын
Рад что понравилось
@AndreyDerkach84 жыл бұрын
побольше таких роликов, молодец Кирилл
@AndroidBroadcast4 жыл бұрын
Спасибо
@fliker23092 жыл бұрын
Спасибо за видео и библиотеку!✌️👍
@tequilaonelove4 жыл бұрын
Большое спасибо за видео, хотелось бы увидеть еще выпуски про Service() , вместе с применением этих самых уведомлений: 1) Запуск и остановка Service() с корректным взаимодействием с уведомлениями и работа в background. 2) Как правильно убирать/запускать/обновлять уведомление, чтобы не получить ANR из-за "закрученных гаек" Android'а или из-за случайно( или нет) забытой разработчиком остановкой работы сервиса в background и есть ли какие то хаки? Из своего опыта есть история, длинною в жизнь.. о применении к уведомлению стиля, например androidx.media.app.NotificationCompat.MediaStyle(), который в свою очередь тащит за собой MediaSession и другие надстройки и костыли, для того чтоб уведомление и текст начал вычисляться и окрашиваться из "LargeIcon" в который собственно отправляется Bitmap в виде обложки музыкальной композиции..И это просто боль)) . После всех настроек и подготовки, код готового Notification.Builder в конечном итоге стал дико огромным... Да и плюс еще PendingIntent'ы, которые привязывают кнопки управления плеером (Play/Pause, Previous, Next) и т.д. В конечном итоге развернул всё в модуле Koin и спрятал, чтоб глаза больше не видели...И вроде бы всё хорошо, но за всё время использования и тестирования работы уведомлений, так до конца и не стало понятно, как разрешить или запрещать смахивать уведомление свайпом (Например смахивать только когда воспроизведение остановлено, и запретить это при активном воспроизведении). На что именно влияют флаги START_NOT_STICKY, STAR_STICKY и др.., возвращаемые методом onStartCommand() в Service и что будет если вернуть вместо флагов строку super.onStartCommand(...) ? При этом после того как убрали уведомление (или до этого?), необходимо не забыть остановить работу в background, либо вовсе убить сервис, иначе можно получить ANR (может произойти случайно, на разных версиях ОС, и не понятно что именно привело к этому, так как краш-лог не очень информативен) опять таки из-за закрученных гаек Android'ом, о работе сервиса в background. В общем сделать нужный и правильный билдер , + вывести уведомление с внешним видом который требуется, + всё это без обращения к customViews стало головной болью и оставило долгозаживающие шрамы в памяти..
@AndroidBroadcast4 жыл бұрын
По поводу темы Service я подумаю, но мне кажется что лучше будет раскрыть фоновую работу в современной Android разработке. История - супер! Очень нравится когда слышишь реальные проблемы
@sonicCat4 жыл бұрын
По поводу запрета смахивания уведомления если аудио проигрывается, достаточно подробно написано в официальной доке: developer.android.com/guide/topics/media-apps/audio-app/building-a-mediabrowserservice. Т.е. достаточно запустить foreground service, который подразумевает наличие уведомления. Если сделать все как там написано и обработать нажатие на кнопки как описано здесь developer.android.com/guide/topics/media-apps/audio-app/mediasession-callbacks уведомление будет смахиваться только если аудио не проигрывается. Сам по этому гайду player писал.
@pavloffme3 жыл бұрын
странно, почему-то нет доступа к Библиотеке Android Notification DSL, просто не скачивается в проект
@AndroidBroadcast3 жыл бұрын
Проверь руководство по настройке github.com/androidbroadcast/Android-Notification-DSL
@yakovweber95964 жыл бұрын
Как всегда топ видео.
@iv26494 жыл бұрын
Спасибо за интересный обзор! Единственное, в нем не хватило упоминаний про режим DOZE и как с ним жить. Возможно это тема для отдельного обсуждения, но было бы интересно услышать твое мнение и подход к этой "проблеме".
@AndroidBroadcast4 жыл бұрын
Doze - это про работу приложений в режими экономии энергии, а видео было про API уведомлений. Возьму на заметку тему про эту тему
@user-sankarsana4 жыл бұрын
Круто! Спасибо.
@dimka11ggg4 жыл бұрын
Что делать с Meizu, Xiaomi и другими системами где, уведомления не приходят без кучи действий со стороны пользователя (включить уведомления, включить фоновый режим, отключить оптимизацию энергопотребления и т.д. и т.п.)
@AndroidBroadcast4 жыл бұрын
Включать в приложение инструкцию для пользователя как из включить, по аналогии как это с браузера и делают
@ruslanerdenoff78664 жыл бұрын
Добрый день, спасибо большое за информацию и библиотеку. Столкнулся с такой проблемой, что приложение получает FCM сообщения но через 15 минут уходит в background там оно стопится и даже FCM сообщения не приходят, пробовал запрашивать permission на отключение "оптимизация батареи" чтобы в whitelist добавить и чтобы Doze не было, но проблему не решило, можете пожалуйста подсказать как здесь быть :( P.S. запрос на включены ли уведомления есть)
@AndroidBroadcast4 жыл бұрын
Сходу не скажу. Надо знать версию ОС, производителя и пр. аспекты. Каждый вендор делает кучу своих независимых оптимизаций
@alekseishcherbakov7854 жыл бұрын
передал в ivi =)
@AndroidBroadcast4 жыл бұрын
Спасибо!
@alexandernifanin73664 жыл бұрын
Большое спасибо! Не успел прослушать до конца, может быть, упоминалось: 1) Раньше значки были монохромными, задавались бело-прозрачным PNG через .setSmallIcon(R.drawable.ic_notification_icon). Сейчас приложения стали выдавать цветные значки. Как это сделать? Также замечал, что цветной значок при неправильной установке на одних устройствах выглядел уменьшенным, на других мог быть белым квадратом. 2) Есть проблема, что на старых устройствах (Android 4) при получении 10 уведомлений они выстраиваются в ряд в StatusBar. На более свежих Андроидах больше 2 уведомлений группируется. 3) Можно сделать разное поведение уведомлений при многократном получении. Например, добавлять в очередь или заменять уведомление более свежим. 4) В Андроиде сделано так, что если открыли приложение из уведомления (открыли активность с параметрами из intent), то мы переходим к какому-то экрану (взятому из intent). Если затем выйти из приложения и открыть его через меню (два раза нажать на квадратную кнопку), оно стартует опять с теми же параметрами и опять переходит к этому экрану. Интересно, это как-то отменяется? Ведь экран уже может быть неактуальным (например, нельзя смотреть информацию по заявке, т.к. она отменена). Наверное, придётся делать проверки в коде. 5) Вы упомянули про notification и data. Это тоже интересная тема, т.к. с доставкой уведомлений много мороки. Как лучше поступать - слать data или notification + data? 6) Есть Silent-уведомления и целый раздел работы с чатами через пуши. 7) Разные производители телефонов могут препятствовать доставке пушей. Иногда время доставки увеличивается до 15 минут.
@AndroidBroadcast4 жыл бұрын
1) Цвет значков зависит от производителя устройства. Google делает их всегда монохромными, а вот тот же Samsung цветными 2) Есть группировка уведомлений в API, но может быть и часть системой делаться 3) Из коробки такого нет, только если вы сами будете управлять этим по id уведомлений 4) Управлять этим можно через специальные флаги в Intent, также можно запустить на Activity из уведомления, а послать Broadcast, который запустит Acitvity 5) Если у вас простые уведомления - notification, если вам нужны не только уведомления или более сложная логика построения их - data 6) Не понял.Что за "Silent уведомления"?
@alexandernifanin73664 жыл бұрын
@@AndroidBroadcast Silent push notification. Сперва они появились на iOS. Возможно, для бэкенда ещё есть проблема в разделении пушей по ОС. На web не слать, на iOS - так, на Андроид - так.
@AndroidBroadcast4 жыл бұрын
В Android они были сколько я помню Push уведомления
@alexandernifanin73664 жыл бұрын
@@AndroidBroadcast Недавно узнал, что уведомления могут сигнализировать не только о том, что они доставлены или прочитаны, но и о том, что их смахнули, не открывая. Странно, что об этом почти нет информации и мало кто использует.