Существует несколько способов передачи данных к следующему занятию, какой из них лучше для вас, в некоторой степени зависит от того, насколько сложны ваши данные. Некоторые варианты:
Parcelable
- это всего лишь эффективный метод передачи сложных объектов. Если вы пойдете этим путем, то да, вы создадите новый объект, который реализует Parcelable
. Ваш метод записи может быть настолько сложным, насколько это необходимо. Если у вас есть сложное дерево объектов, просто заставьте каждый из объектов реализовать Parcelable
и переходите к методу writeToParsel
этого объекта, чтобы записать эту часть дерева объектов.
Более простой, но менее эффективный метод - просто реализовать все ваши объекты Serializable
. Там для вас выполняется сериализация и десериализация, но она заметно медленнее, чем реализация Parcelable
.
Если вашей деятельности требуется лишь несколько бит примитивной информации, вы также можете просто передать их как свои собственные дополнительные.
Наконец, вы можете использовать расширение класса Application
или какой-то другой синглтон для хранения сложной структуры данных, и просто передать новый Activity
небольшой объем информации, необходимый для поиска остальных данных. , Это уменьшает объем данных, которые необходимо передать, и может помочь вам обойти проблемы, связанные с запуском и остановкой операций.