Size: a a a

Android Developers

2021 January 27

AW

Another World in Android Developers
Я в принципе уже разобрался
источник

I

Ivansuper in Android Developers
Another World
Да нет, не должен иметь смысл. Мне просто нужно получить рандомные числа без повторений на самом деле, но API 19 не поддерживает ThreadLocalRandom. Тупая проблема, но все же.
ThreadLocal + Random?
источник

AW

Another World in Android Developers
Ivansuper
ThreadLocal + Random?
Типо анонимный класс самому сделать?🧐
источник

AW

Another World in Android Developers
Ivansuper
ThreadLocal + Random?
Мне не сам поток, а его методы класса нужны: distinct и limit
источник

AD

Aleksey D. in Android Developers
привет! стало интересно, почему может быть плохо, если сохранять состояние фрагмента в аргументы.

кажется, что они ведут себя так же, как и savedInstanceState 🤔
источник

I

Ivansuper in Android Developers
Another World
Мне не сам поток, а его методы класса нужны: distinct и limit
Ну ты нашел обходное решение в итоге уже?
источник

MM

Michael Mazaev in Android Developers
Ivansuper
Если порядок элементов должен иметь смысл, то использовать Set не стоит в принципе. Если просто случайно какой то надо, например пятый, то возьми итератор да докрути до пятой итерации. Но это такое
Ура. Я разобрался. Пуши игнорятся несколько секунд после удаления приложения из списка недавно запущенных. Наверное, система в этот момент обрабатывает это действие. Если подождать секунд 10-15, то пуши приходят нормально. Огромное спасибо, Иван.
источник

AW

Another World in Android Developers
Ivansuper
Ну ты нашел обходное решение в итоге уже?
Да, я в конструктор HashSet кидаю рандомные числа в нужном диапазоне, пока его размер не стал достаточен. Кривовато, но хоть как-нибудь пока)
источник

СП

Сергей П. in Android Developers
В андроиде плохо может быть на ровном месте.
Почему в данном случае - сразу не скажу но по ощущениям - непременно будет!
От греха не стоит ничего присовывать своего в saved...., это дикое легаси думаю
источник

I

Ivansuper in Android Developers
Michael Mazaev
Ура. Я разобрался. Пуши игнорятся несколько секунд после удаления приложения из списка недавно запущенных. Наверное, система в этот момент обрабатывает это действие. Если подождать секунд 10-15, то пуши приходят нормально. Огромное спасибо, Иван.
Промазал с цитатой : ) Но я рад за тебя
источник

AD

Aleksey D. in Android Developers
Сергей П.
В андроиде плохо может быть на ровном месте.
Почему в данном случае - сразу не скажу но по ощущениям - непременно будет!
От греха не стоит ничего присовывать своего в saved...., это дикое легаси думаю
но если не присовывать, то какие альтернативы для сохранения текущего состояния?

да и с чего бы это легаси называть?
источник

I

Ivansuper in Android Developers
Aleksey D.
привет! стало интересно, почему может быть плохо, если сохранять состояние фрагмента в аргументы.

кажется, что они ведут себя так же, как и savedInstanceState 🤔
Ты же не ешь из ванны, хотя она похожа на емкость, в которую можно положить еду?
источник

I

Ivansuper in Android Developers
Даже если 2 апи используют бандл, не значит, что поведение одно
источник

AD

Aleksey D. in Android Developers
Ivansuper
Даже если 2 апи используют бандл, не значит, что поведение одно
верно, но я как раз-таки и хочу понять, что может пойти не так, а не «ок, эта ванна не для еды»
источник

I

Ivansuper in Android Developers
Aleksey D.
верно, но я как раз-таки и хочу понять, что может пойти не так, а не «ок, эта ванна не для еды»
Ну, система вполне может аргументы фрагмента сохранить один раз и после этого только восстанавливать. В итоге ты будешь просто терять все, что записал
источник

СП

Сергей П. in Android Developers
Aleksey D.
но если не присовывать, то какие альтернативы для сохранения текущего состояния?

да и с чего бы это легаси называть?
Любые другие. Туда неизвестно какие методы неизвестно в какой момент суют неизвестно какое состояние полей класса. И вынимают так же.
Нет, можно разобраться по исх.коду  - но оно еще и на разных апи разное
источник

I

Ivansuper in Android Developers
Aleksey D.
верно, но я как раз-таки и хочу понять, что может пойти не так, а не «ок, эта ванна не для еды»
Бсод точно не получишь : )
источник

AD

Aleksey D. in Android Developers
Ivansuper
Ну, система вполне может аргументы фрагмента сохранить один раз и после этого только восстанавливать. В итоге ты будешь просто терять все, что записал
ну вот уже сейчас вижу, что в FragmentManager#saveAllState мы КАЖДЫЙ раз сохраняем аргументы
источник

I

Ivansuper in Android Developers
Есть такое понятие, которые сишники любят, а у нас очень редко упоминают -- UB. Вот, сохранять состояние в аргументах это Undefined Behaviour
источник

СП

Сергей П. in Android Developers
Сохраняй в gson в префах или в orm. Или в базе в репе, если данные важные
источник