Android Лучшая практика для передачи большого объекта между действиями? - PullRequest
0 голосов
/ 10 июля 2019

Я хочу передать большой объект (Parcelable) между двумя действиями, что является лучшим способом для этого? Я не могу использовать Intent из-за ограничения Parcelable:

android.os.TransactionTooLargeException: data parcel size 1002388 bytes

Итак, что лучше для этого делать?

1 Ответ

0 голосов
/ 10 июля 2019

Лучшая практика - не передавать весь объект через операции или фрагменты транзакций. Лучше всего сохранить файл в БД или любую локальную папку и передать Acitvity / Fragment ссылку на объект (идентификатор из БД или URI в файл).

val intent = Intent(this, MainActivity::class.java)
intent.putExtra(EXTRA_KEY_FILE_ID, fileId)
startActivity(intent)
...