Я реализовал Activity, которая в значительной степени использует LiveDatas, так или иначе зависящие друг от друга. После вычисления некоторых вещей в этих LiveDatas, List дается инкапсулированным в одну окончательную LiveData для представления, где он наблюдается и отображается как некоторый вывод.
Я тестировал это приложение на SDK Версия 24 . Во многих случаях после запуска приложения список меняется, хотя я не менял данные (просто перезапускаю приложение). И только через несколько раз после запуска приложения отображается правильный список с правильными данными. Другое странное наблюдение заключается в том, что атрибуты класса Foo изменяются также при некоторых перезапусках (например, при одном запуске int attr1 равно 42, а при другом запуске attr1 имеет значение 45).
Я также тестировал приложение на SDK Версия 23 , где ошибок не возникает и список детерминирован при каждом запуске.
Так кто-нибудь знает, есть ли такие изменения в API между различными версиями SDK, которые приводят к этим ошибкам в новой версии SDK?
Трудно привести пример кода, но если он понадобится, я постараюсь создать абстрактный.