Могут ли быть различия в обработке LiveData между различными SDK-версиями? - PullRequest
0 голосов
/ 27 марта 2019

Я реализовал Activity, которая в значительной степени использует LiveDatas, так или иначе зависящие друг от друга. После вычисления некоторых вещей в этих LiveDatas, List дается инкапсулированным в одну окончательную LiveData для представления, где он наблюдается и отображается как некоторый вывод.

Я тестировал это приложение на SDK Версия 24 . Во многих случаях после запуска приложения список меняется, хотя я не менял данные (просто перезапускаю приложение). И только через несколько раз после запуска приложения отображается правильный список с правильными данными. Другое странное наблюдение заключается в том, что атрибуты класса Foo изменяются также при некоторых перезапусках (например, при одном запуске int attr1 равно 42, а при другом запуске attr1 имеет значение 45).

Я также тестировал приложение на SDK Версия 23 , где ошибок не возникает и список детерминирован при каждом запуске.

Так кто-нибудь знает, есть ли такие изменения в API между различными версиями SDK, которые приводят к этим ошибкам в новой версии SDK?

Трудно привести пример кода, но если он понадобится, я постараюсь создать абстрактный.

...