#android #parcelable
#Android #разделяемый
Вопрос:
Существует много информации, касающейся Parcelable в Android. Оглядевшись, я не смог найти хорошего решения для своей проблемы.
Итак, мне нужно создать класс (назовем его «MyClass»), который расширяет пользовательский класс, написанный кем-то другим («HisClass»). В HisClass есть много переменных экземпляра, некоторые из которых сами являются объектами пользовательских классов. Я хочу передать объект MyClass из одного действия в другое, и я понимаю, что мне нужно сделать его разделяемым. Но как насчет переменных экземпляра, которые являются пользовательскими объектами?
Читая это, я думаю, мне нужно, чтобы каждый отдельный пользовательский объект реализовал разделяемость. Поскольку в MyClass и HisClass есть много пользовательских объектов, которые снова имеют пользовательские объекты для переменных экземпляра, мне это кажется плохим решением.
Есть ли лучший способ? Может быть, я просто совершенно слеп здесь. Надеюсь, кто-нибудь сможет мне помочь.
Ответ №1:
Ну, вы можете использовать Serializer
, но это приведет к снижению производительности. AFAIK, реализация Parcelable
— лучший способ передачи данных. Кроме того, не пытайтесь усложнять себя, создавая так много сложной структуры данных для передачи Intent
.
Либо используйте Parcelable
для чего-то дешевого / легкого / меньшего количества, либо для чего-то еще, например, вывода в файлы…и передача его путей.
Комментарии:
1. Я думал об использовании файла в качестве временного хранилища. Но по соображениям безопасности я бы предпочел этого не делать. В этих объектах хранятся конфиденциальные данные, и я не хочу, чтобы эта информация хранилась в файловой системе. Я мог бы, конечно, зашифровать данные перед записью их в файл, но я не уверен, повредит ли это производительности.