Я хочу передать огромный объект (например, Bitmap
) из одного действия в другое внутри одного процесса. Если я помещу его в Bundle
как Parcelable
, действительно ли Android сериализует объект или передаст его по ссылке?
Эффективность Parcelable для связи внутри процесса
Ответы (1)
Android использует объект Parcelable при передаче информации от одного процесса к другому. В этом случае он сначала разбирает объект на примитивы, а затем отправляет их удаленному процессу. Так как (обычно) два действия одного и того же приложения выполняются в одном и том же процессе, нет необходимости анализировать объект. Здесь Я обнаружил, что в вашем случае будет создана слабая ссылка на ваш объект, и она будет передана второй активности. Если у вас есть действия в разных процессах (например, в разных приложениях), то ваш объект будет проанализирован и отправлен второму процессу (и в этом случае, я думаю, он будет отправлен по значениям).
person
Yury
schedule
13.03.2012