на data parcel size? То есть лишь только на этих девайсах моё приложение вываливает android.os.TransactionTooLargeException: data parcel size 643600 bytes, на других девайсах всё работает хорошо
Кейс таков: есть 1 Activity с FragmentContainerView и 3 Fragment. Навигация между фрагментами осуществляется при помощи навкомпонента. В Activity используется Intent лишь только для получения строк, а данные фрагменты получают из ViewModel
Это ограничение есть везде, просто размер разный максимальный: где-то 2 мб может быть
А где такое вылазит? В интент такой объём добавляется?
Но что мне делать если они не предоставляют образы для виртуалки и у меня нет смартфона данной марки?
Сокращайте размер данных в интенте
Вылазит это, скорее всего, при сворачивании приложения у Fragment
Но как мне сократить размер данных, если важна их целостность?
На всех. Лимит 2мб для данных на все приложения. Не передавай в биндере ничего крупного. Положи данные в обьект-контейнер, а получатель их заберет
Так я и не передаю ничего крупного, вроде как, и даже не понимаю, что вообще может вызвать такое поведение
В интенте нельзя столько передавать. Сохраняйте куда нибудь и потом читайте. А в интенте только указывайте что потом читать
Так 643600 байт это даже не 1 Мбайт. Какой-то бред, ведь я не выхожу за рамки 2 Мбайт 🤔
мб у них ограничения такие
1мб при межпроцессном взаимодействии
многовато передаешь, несколько килобайтов - ок, все остальное лучше передавать иначе
Не бред, бред в интент пихать много данных. Это плохая практика в принципе
2 мб на все 100 приложений суммарно
Обсуждают сегодня