2016-08-29 4 views
0

В настоящее время я пишу библиотеку View, которая избавляется от необходимости в действиях и фрагментах и ​​должна быть более понятной и т. Д. И т. Д. В любом случае, это моя цель.Как изящно обрабатывать Parcelable изменения реализации при хранении на диске в конце концов?

Однако я изо всех сил пытаюсь найти решение о том, как хранить состояние. я получаю состояние от ребенка Просмотров как Parcelable, однако в соответствии с Android документов, то Parcelable реализация может сломаться нибудь

Как таковой, он не подходит для размещения каких-либо данных участка в постоянное хранение: изменения в базовая реализация любой из данных в Посылке может сделать старые данные нечитаемыми.

Поскольку это, по-видимому, единственно возможное решение, и оно предназначено только для состояния (так же, как это использует Activity), все должно быть хорошо.

Вопрос, который я задаю себе сейчас, заключается в том, как Android Acitivty обрабатывает или понижает внутреннюю целостность? (Они даже сохраняют состояния при перезагрузке устройства?) Был ли какой-нибудь способ узнать, когда изменяется реализация, поэтому я не уничтожаю все приложения с помощью моей библиотеки?

(Должен ли я просто игнорировать этот вопрос, потому что исторически он никогда не нарушал?)

ответ

3

Стойкие хранения означает экономию на диск, то есть, переживая за жизненный цикл процесса.

В Android хранятся только данные Parcelable (например, связанные с активностью), пока процесс жив, а это означает, что он никогда не сталкивается с этими проблемами. Пока вы делаете что-то подобное, тогда нет проблем.

+0

Когда приложение убито в ситуации с низкой памятью, состояние экземпляра не будет перенаправлено на активность? Интересно. Спасибо. – domenukk