Кирилл
Когда крутим смартфон - все вызывается. И onSaveInstanceState тоже.
Конечно, потому что активити его вызывает у себя и у своих фрагментов. А никак не при дестрои фрагмента и вызывается фрагментом
Seva
и я был не прав насчет вызова onSaveInstanceState, что он обязательно вызовется между onPause и он Stop
This corresponds to [ Activity.onSaveInstanceState(Bundle)][Activity.onSaveInstanceState] and most of the discussion there * applies here as well. Note however: *this method may be called * at any time before [.onDestroy]*. Перед onDestroy вызывается. А когда - никто не обещает. У меня оно после onStop вызывается.
Eugene
не передавать данные такого размера в bundle
А есть другой способ передать данные в другое активити?
Eugene
в таком же размере*
Ivan
А есть другой способ передать данные в другое активити?
если объекты можно из БД достать, то доставать в другом активити Если нет, то можно в каком-то классе их сохранить (типа Shared ViewModel)
Кирилл
А есть другой способ передать данные в другое активити?
bundle, общий ViewModel, сохранение и чтение на телефон
Andrey
android.hardware.Camera (не Camera2) всегда возвращает пожатую JPG картинку или можно получить от него картинку без сжатия?
Eugene
если объекты можно из БД достать, то доставать в другом активити Если нет, то можно в каком-то классе их сохранить (типа Shared ViewModel)
Я тут начал гуглить, почти везде в примерах передача данных через SharedViewModel из фрагмента в фрагмент С активити такое можно провернуть?
Константин
Я тут начал гуглить, почти везде в примерах передача данных через SharedViewModel из фрагмента в фрагмент С активити такое можно провернуть?
А почему нет? почитайте первые 4 урока здесь https://startandroid.ru/ru/courses/architecture-components/27-course/architecture-components/527-urok-4-viewmodel.html Времени много не займет, но поможет здорово. мне лично очень помогло
Eugene
Всем спасибо
Seva
Странно. При возвращении обратно к фрагменту, сначала вызывается onCreate. А потом onDestroy... Но фрагмент не разрушен.
Seva
Или это старый фрагмент разрушается, после создания другого экземпляра себя?
Seva
Тогда в какой-то мере понятно, почему onSaveInstanceState не вызывается при переходах между фрагментами. Смысла нет.
Seva
Но при кручении экрана все нормально вызывается.
Seva
Я тут начал гуглить, почти везде в примерах передача данных через SharedViewModel из фрагмента в фрагмент С активити такое можно провернуть?
Нельзя. Потому что SharedViewModel - она как бы объяснить... создается активити и привязана к активити lifecycle. И шаред только между фрагментами этой активити. У разных активити будут разные экземпляры viewmodel
Саша Батанова
Ребятушки, привет. Какие сервисы для баг-трекинга sdk есть? Умеет ли firebase или есть другие решения?
Кирилл
Тогда в какой-то мере понятно, почему onSaveInstanceState не вызывается при переходах между фрагментами. Смысла нет.
Я уже объяснял, OnSaveInstance вызывает не фрагмент а активити. OnSaveInstance в фрагментах триггерит активность
Andrey
При фотографировании получаются мелкие детали плохого качества. В Camera2 API есть сохранение в RAW формат, и там говорят, что картинки нормальные. А у меня на девайсе Camera2 не поддерживается, и картинка с камеры сохраняется сразу в JPG. Вопрос в том, можно ли в Camera1 программно сохранить картинку без JPG сжатия?
Кирилл
"Я уже объяснял" чем-то надо обосновать..
Очень жаль. Делать это я не буду, если интересно читай доки
Seva
Заявлять безаппеляционно, что onSaveInstanceState " Он не отрабатывается, там по дефолту они реплейсятся" как бы есть подозрение, что не совсем верно.
Seva
Потому что отрабатывается. При вращении экрана. При смене конфигурации.
Seva
Очень жаль. Делать это я не буду, если интересно читай доки
Естественно, если не знаете, то и не надо этого делать..
Кирилл
Потому что отрабатывается. При вращении экрана. При смене конфигурации.
Наверное отрабатывает потому что активити надо сохранить свое состояние и при этом она триггерит сохранение состояния у фрагментов???
Seva
Наверное отрабатывает потому что активити надо сохранить свое состояние и при этом она триггерит сохранение состояния у фрагментов???
Вы свою цитату читали? Вы просто написали - "не отрабатыватеся", "реплейсится". А это не так. И отрабатыватеся и ничем не заменяется.
Кирилл
Вы свою цитату читали? Вы просто написали - "не отрабатыватеся", "реплейсится". А это не так. И отрабатыватеся и ничем не заменяется.
Во первых, не отрабатывается потому что фрагменты реплейсятся, активити при этом остаётся старым, сохранять свое состояние ей не нужно -> у фрагментов OnSaveInstance не вызывается. Во вторых навигация от Гугла, без дополнительных Бубнов, реплейсит фрагменты при их смене
Seva
Человек искал этот onSaveIncstanceState в логах между onPause и onStop. А он вызывается после onStop. Перед Destroy, Который воббще вызывается после создания другого экземпляра фрагмента.
Andrey
При использовании camera2 api есть подводные камни. https://stackoverflow.com/a/50705173/4320275
Вот именно. У меня поддерживается только LEGACY mode, то есть по факту Camera2 не поддерживается. А надо сохранить изображение без потерь
leksss
Подскажите, через что реализовать? через edit text не вариант, у него нельзя задать бэкграунд, тогда потеряется линия. Пытался через TextInputLayout, но там не поддерживается перенос строк у хинта(
Shveps
Вот именно. У меня поддерживается только LEGACY mode, то есть по факту Camera2 не поддерживается. А надо сохранить изображение без потерь
Помнится мне, что при LEGACY откатывался на camera1 и сохранял максимальное возможное разрешение. Код скинуть не могу, т.к. доступ закрыт в репу
Vitaly
Подскажите, через что реализовать? через edit text не вариант, у него нельзя задать бэкграунд, тогда потеряется линия. Пытался через TextInputLayout, но там не поддерживается перенос строк у хинта(
Если не нужен вводе текста в стиле Material, то используй EditText и задай ему вручную фон Вот ссылочка на stackoverflow с чего можно начать: https://stackoverflow.com/questions/24870256/android-edittext-background-with-line-inside/24871970
Egor
Ребят, создаю файлы в таком File(context.filesDir, App.VIDEOS_FOLDER). Я могу как то зайти в эту папку через путь? Или она закрытая?
Vitaly
Я знаю как работает)
В чем сложность?
Egor
Да, директория files внутри пакета приложения
Это на емуле, а на реальном девайсе? Она же скрыта
Egor
Да, директория files внутри пакета приложения
Я скачивал туда уже видосы, но в data и obb нет папки моего пакета
Egor
Да, директория files внутри пакета приложения
Я только через этот проводник нашел файлы
Vitaly
Я только через этот проводник нашел файлы
Через проводник на самом Android устройстве посмотреть эти файлы нельзя
Vitaly
Только через AS если приложение запущено через Debug flavor
Vitaly
Kirill
Подскажите плиз. Мне надо отловить 2 нажатия KEYCODE_DEL В setOnKeyListener Если зажимаю KEYCODE_DEL, event.action постоянно меняется, и получается, якобы идут нажатия (ACTION_DOWN, ACTION_UP), хотя кнопка просто зажата, как с этим можно побороться?
Дмитрий
Всем привет. Подскажите, пожалуйста. Если сделать простое webview приложение, оно будет запонимать аккаунты на которые вошли ранее?
Kirill
Можешь скинуть код через pastebin? Какая задача стоит?
Если пользователь сам нажал 2 раза KEYCODE_DEL, надо выполнить условие. et.setOnKeyListener { _, i, event -> if (i == KeyEvent.KEYCODE_DEL && event.action == KeyEvent.ACTION_DOWN && textLiveData.value.isNullOrBlank()) if (i == KeyEvent.KEYCODE_DEL) { Handler().postDelayed({isKeyDell = false},1000) isKeyDell = true return@setOnKeyListener true } return@setOnKeyListener false }
Кирилл
Как будет жить фореграунд сервис если пользователь скроет уведомление? Система его убьёт?
Кирилл
Он не может его скрыть, оно постоянно висит в шторке
Я имею ввиду это. Пользователь же может блокнуть канал уведомлений?
Egor
Я имею ввиду это. Пользователь же может блокнуть канал уведомлений?
Ну так значит просто он не будет видеть его, типо юзера проблемы, что форграунд работает, а он не знает о нём
⬤ vitaly
студия после какого-то из апдейтов лагает как мразь. У кого ещё так было? Что можно сделать?
Евгений
понять и простить
Future Franklin
Entry name 'META-INF/androidx.legacy_legacy-support-v4.version' collided Кто знает из-за чего эта х появляется?(не могу уже собрать проект раз 10)
Кирилл
Кирилл
Ты не добавлял новых?
Future Franklin
dimonovdd
Всем привет. Я уже закопался и запутался в край. Как звук push уведомления поменять в android?
dimonovdd
Название звука отпраляю в параметр sound FCM, но говорят, что этот парметр игнорируется на android выше Oreo (api 26)
Roman
Ребят, задавал этот вопрос в соседнем чате по архитектуре, но там пока тишина, может тут выстрелит. Есть юзкейс, юзкейс работает с ReviewManager, за имплементацией которого прячу вызовы к реальной библиотеке. Вопрос вот в чем: в некоторых случаях этот самый ReviewManager должен прочитать файл из res/raw. Я правильно понимаю, что передавать в такой output port контекст или открытый InputStream плохая идея?
dimonovdd
notificationBuilder.setSound
да вот что-то не рабоатет, да и на сколько я понял notificationBuilder исспользуется же только, когда приложение открыто и на переднем плане
Ivan
да вот что-то не рабоатет, да и на сколько я понял notificationBuilder исспользуется же только, когда приложение открыто и на переднем плане
ну вызови этот билдер прямо в FirebaseMessagingService в методе onMessageReceived, будет работать не только когда открыто
dimonovdd
ну вызови этот билдер прямо в FirebaseMessagingService в методе onMessageReceived, будет работать не только когда открыто
onMessageReceived как я понял отрабатывает именно когда открыто приложение, нет?
Сергей
Когда свернуто - тоже.
dimonovdd
notificationBuilder.setSound
и buider какой? NotificationCompat.Builder ?
dimonovdd
Когда свернуто - тоже.
а когда закрыто?
Ivan
а когда закрыто?
срабатывает, если запущен твой FirebaseMessagingService, то есть практически всегда)