Size: a a a

Android Developers

2021 January 02

MB

Muslim Barcaman in Android Developers
Для перехода по фрагментам использую ViewPager и TabLayout. Есть 4 ТабИтема.. Когда я делаю переход с первого фрагментана на 4ый, то фрагмент перерисовывается, вызывается метод onCreate. А если с первого на второй, то не вызывается onCreate. Можно ли как-нибудь сделать так, чтобы с первого на 4ый фрагмент не перерисовывался? Почему так происходит? Ведь у меня для вызова всех фарментов один код
источник

NT

Nikita Tipun in Android Developers
Muslim Barcaman
Для перехода по фрагментам использую ViewPager и TabLayout. Есть 4 ТабИтема.. Когда я делаю переход с первого фрагментана на 4ый, то фрагмент перерисовывается, вызывается метод onCreate. А если с первого на второй, то не вызывается onCreate. Можно ли как-нибудь сделать так, чтобы с первого на 4ый фрагмент не перерисовывался? Почему так происходит? Ведь у меня для вызова всех фарментов один код
Если не хочешь чтобы прям каждый раз создавался новый фрагмент, то можешь выставить offscreenPageLimit = 3 или как-то так
источник

L

Leonid in Android Developers
Muslim Barcaman
Для перехода по фрагментам использую ViewPager и TabLayout. Есть 4 ТабИтема.. Когда я делаю переход с первого фрагментана на 4ый, то фрагмент перерисовывается, вызывается метод onCreate. А если с первого на второй, то не вызывается onCreate. Можно ли как-нибудь сделать так, чтобы с первого на 4ый фрагмент не перерисовывался? Почему так происходит? Ведь у меня для вызова всех фарментов один код
view pager заранее создаёт соседние с выбранным фрагменты (чтобы быстрее между ними переключаться), а дальние убивает (для экономии памяти)
источник

MB

Muslim Barcaman in Android Developers
Nikita Tipun
Если не хочешь чтобы прям каждый раз создавался новый фрагмент, то можешь выставить offscreenPageLimit = 3 или как-то так
Спасибо! То что надо
источник

VQ

Victor Qs4kdddk in Android Developers
Мне тут в прошлые разы упоминали, что сохраненное в getPreference() может удаляться при чистке мусора в андройде. Но в документации по этой штуке я такого не вижу. Вопрос, действительно ли эти key-value данные чистятся, и если да, то где в документации об этом говорится?
источник

L

Leonid in Android Developers
Victor Qs4kdddk
Мне тут в прошлые разы упоминали, что сохраненное в getPreference() может удаляться при чистке мусора в андройде. Но в документации по этой штуке я такого не вижу. Вопрос, действительно ли эти key-value данные чистятся, и если да, то где в документации об этом говорится?
Первый раз об этом слышу. Никогда с таким не сталкивался.
Юзер может удалить локальные настройки приложения. Но чтобы сама ОС при какой-то чистке мусора?! 🤷‍♂ Есть примеры такой интересной чистки? Какого мусора? Что считается мусором?
источник

VQ

Victor Qs4kdddk in Android Developers
Leonid
Первый раз об этом слышу. Никогда с таким не сталкивался.
Юзер может удалить локальные настройки приложения. Но чтобы сама ОС при какой-то чистке мусора?! 🤷‍♂ Есть примеры такой интересной чистки? Какого мусора? Что считается мусором?
У меня нет примеров, но я пока не профи в вопросе. Собрался думать что делать на эту тему, а в доках ничего не увидел по getPreference(). Вот и задаю вопрос.
источник

VQ

Victor Qs4kdddk in Android Developers
Т.е. по сути вопрос, будет ли корректно хранить параметры подключения к серверу в этих key-value? (ip, login, password)
источник

L

Leonid in Android Developers
Victor Qs4kdddk
У меня нет примеров, но я пока не профи в вопросе. Собрался думать что делать на эту тему, а в доках ничего не увидел по getPreference(). Вот и задаю вопрос.
Если в документации по shared preferences не говорится, что ОС может их удалить в любое время, значит она их не удаляет.
источник

L

Leonid in Android Developers
Victor Qs4kdddk
Т.е. по сути вопрос, будет ли корректно хранить параметры подключения к серверу в этих key-value? (ip, login, password)
Не надо хранить логин и пароль. Дыра в безопасности.
источник

VQ

Victor Qs4kdddk in Android Developers
Egor Sigolaev
А юзер потом такой: "Ща как почищу кеш в прилке, освобожу память"🙂
Вот здешний товарищ пугал меня такими словами...
источник

L

Leonid in Android Developers
Victor Qs4kdddk
Вот здешний товарищ пугал меня такими словами...
Правильно, юзер - может, когда захочет. Но не само же по себе это удаляется.
источник

VQ

Victor Qs4kdddk in Android Developers
Leonid
Правильно, юзер - может, когда захочет. Но не само же по себе это удаляется.
Но юзер то не может же знать что это за данные. Почему тогда юзер при чистке системы key-value может удалить, а данные в SQLite не может? Или SQLite то же удаляется при чистках?
источник

VQ

Victor Qs4kdddk in Android Developers
Может я сам до конца не понимаю, но по аналогии с десктопами, есть файлы во временных папках, а есть данные программы. Я вот и думал, что при чистках чистятся всякое временное.
источник

L

Leonid in Android Developers
Victor Qs4kdddk
Но юзер то не может же знать что это за данные. Почему тогда юзер при чистке системы key-value может удалить, а данные в SQLite не может? Или SQLite то же удаляется при чистках?
По-моему, Clear local data удалит все, что создало приложение в своей приватной директории, включая SQL.
источник

L

Leonid in Android Developers
Victor Qs4kdddk
Может я сам до конца не понимаю, но по аналогии с десктопами, есть файлы во временных папках, а есть данные программы. Я вот и думал, что при чистках чистятся всякое временное.
У приложения на Андроиде есть своя приватная директория, куда пишутся настройки, файлы и где живёт SQL (давно с ним не работал, не помню точно). Clear local data все это чистит.
источник

VQ

Victor Qs4kdddk in Android Developers
Вот у меня есть такая типовая тулся на Xiaomi, я ее периодически нажимаю, но она никогда не сбрасывает настройки программы.
источник

L

Leonid in Android Developers
Кроме того, приложение может получить доступ в общую директорию на устройстве. Clear local data ее не удаляет.
источник

VQ

Victor Qs4kdddk in Android Developers
Leonid
По-моему, Clear local data удалит все, что создало приложение в своей приватной директории, включая SQL.
Но Clear local data это кнопка такая или команда из api android? Меня то интересует, что бы пользователь случайно не сбросил настройки, если только пока не захочет удалить эту программу.
источник

L

Leonid in Android Developers
Victor Qs4kdddk
Вот у меня есть такая типовая тулся на Xiaomi, я ее периодически нажимаю, но она никогда не сбрасывает настройки программы.
Ну, это они сами в Xiaomi так написали. Точно так же они могли написать, чтобы и локальные данные удалялись. Это не есть стандартное поведение Android.
источник