Если сворачивать приложение кнопкой назад , работает без ошибок. Но если приложение закрыть в диспетчере программ или остановить из студии , выдает ошибку : InputDispatcher system_server ........mycomposedatastore.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed! И после этого настройки считывает по умолчанию, Json прочитать не может. kotlinx.serialization.json.internal.JsonDecodingException: Expected start of the object '{', but had 'EOF' instead at path: $
У меня ошибку не выдаёт, но настройки сбрасываются при попытке повторного открытия приложения. Кто-нибудь подскажет, как это исправить? Заранее благодарен!
@@alexeyagaltsov634 оттолкнулся от вашего комментария, обнаружил в logcat'е эти ошибки и нашел-таки решение: в файле-объекте SettingsSerializer в функции readFrom было string = input.readBytes().toString(), а надо string = input.readBytes().decodeToString()
Этот урок то самое, что я искал, возможность простого сохранения. Спасибо за Ваши старания. Ваши уроки действительно помогают пониманию как все устроено. Кстати, есть идея на будущее, простое приложение типа викторина. Несколько вопросов с вариантами ответов. Было бы интересно узнать как это реализуется.
кому леннь писать можите скопировать id 'org.jetbrains.kotlin.plugin.serialization' version '1.6.10' apply false id 'org.jetbrains.kotlin.plugin.serialization' implementation 'org.jetbrains.kotlinx:kotlinx-serialization-json:1.3.2' implementation 'androidx.datastore:datastore:1.0.0'
Спасибо за ответ, Сергей! Похоже collect и collectAsState мне нужны оба в одном приложении) Но очень хочется переделать под proto DataStore) Отличнейший прекраснейший нужнейший урок! Нигде ничего подобного так понятно вам не расскажут! Моё почтение, Сергей 👍 P.S. осталось разобраться с производительностью)
А в теории можно было бы сохранять цвет и размер текста при событии OnDestroy у MainActivity? Или при каком-нибудь другом событии жизненного цикла. Просто чтобы при каждом клике на кнопку не сохранять, а один раз при выходе из приложения.
Вопрос: по какой причине может быть такое, что данные сохраняются, но при первом открытии приложения не читаются(в результате чего выбираются значения по умолчанию)?
Может кто подскажет, делаю checkBox и ни чего не понимаю как сделать чтоб запоминало состояние, еще и через навигатор вообще конец. Может у кого есть что почитать по этому поводу? А ролик супер, теперь хоть представление имею что это.
Привет, ты должен при нажатии брать сохранять Boolean переменную с состоянием твоего CheckBox и после доставать это состояние из памяти и этот Boolean передавать в этот ckeckBox.isChecked = «твой Boolean»
Если сворачивать приложение кнопкой назад , работает без ошибок. Но если приложение закрыть в диспетчере программ или остановить из студии , выдает ошибку : InputDispatcher system_server ........mycomposedatastore.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed! И после этого настройки считывает по умолчанию, Json прочитать не может. kotlinx.serialization.json.internal.JsonDecodingException: Expected start of the object '{', but had 'EOF' instead at path: $
У меня ошибку не выдаёт, но настройки сбрасываются при попытке повторного открытия приложения. Кто-нибудь подскажет, как это исправить? Заранее благодарен!
@@BookMarks-n9b Если настройки сбрасываются по умолчанию, то ошибка чтения JSON есть, и она отображается в logcat.
@@alexeyagaltsov634 оттолкнулся от вашего комментария, обнаружил в logcat'е эти ошибки и нашел-таки решение: в файле-объекте SettingsSerializer в функции readFrom было string = input.readBytes().toString(), а надо string = input.readBytes().decodeToString()
@@BookMarks-n9b Спасибо за информацию. Поправил у себя , настройки теперь сохраняются .
@@BookMarks-n9b Да Все верно, моя ошибка, не так написал. Нужно decodeToString() спасибо за коммент! Закреплю его вверху чтоб другим помагал!
Спасибо вам Сергей!
Огромное спасибо!!
Очень доступное объяснение!
Благодарю за урок
сразу лайк и благодраю за ваш труд)👍👍👍👍
Этот урок то самое, что я искал, возможность простого сохранения. Спасибо за Ваши старания. Ваши уроки действительно помогают пониманию как все устроено. Кстати, есть идея на будущее, простое приложение типа викторина. Несколько вопросов с вариантами ответов. Было бы интересно узнать как это реализуется.
Сергей благодарю за урок!
кому леннь писать можите скопировать
id 'org.jetbrains.kotlin.plugin.serialization' version '1.6.10' apply false
id 'org.jetbrains.kotlin.plugin.serialization'
implementation 'org.jetbrains.kotlinx:kotlinx-serialization-json:1.3.2'
implementation 'androidx.datastore:datastore:1.0.0'
@@Arhmed13 Всё для людей)))) 👍
Лайк
Спасибо за ответ, Сергей! Похоже collect и collectAsState мне нужны оба в одном приложении) Но очень хочется переделать под proto DataStore)
Отличнейший прекраснейший нужнейший урок! Нигде ничего подобного так понятно вам не расскажут!
Моё почтение, Сергей 👍
P.S. осталось разобраться с производительностью)
А в теории можно было бы сохранять цвет и размер текста при событии OnDestroy у MainActivity? Или при каком-нибудь другом событии жизненного цикла. Просто чтобы при каждом клике на кнопку не сохранять, а один раз при выходе из приложения.
@@dfyyrjify конечно можно, без проблем
Расскажите про передачу аргументов в навигации
Вопрос: по какой причине может быть такое, что данные сохраняются, но при первом открытии приложения не читаются(в результате чего выбираются значения по умолчанию)?
Может кто подскажет, делаю checkBox и ни чего не понимаю как сделать чтоб запоминало состояние, еще и через навигатор вообще конец. Может у кого есть что почитать по этому поводу? А ролик супер, теперь хоть представление имею что это.
Привет, ты должен при нажатии брать сохранять Boolean переменную с состоянием твоего CheckBox и после доставать это состояние из памяти и этот Boolean передавать в этот ckeckBox.isChecked = «твой Boolean»
Продвинутые видео по типу fitness app доступные на ютубе c уровня подписки Premium или только Premium pro? там просто не совсем понятно))
По фитнесу просто pro доступны
can you connect api google drive android stuidio java