У меня есть приложение, которое динамически генерирует от 6 до 100 небольших растровых изображений, чтобы пользователь мог перемещаться по экрану в данном сеансе. В настоящее время я создаю их в onCreate
и сохраняю их на SD-карте, так что после изменения ориентации я могу вытащить их из внешнего хранилища и отобразить их снова. Однако для этого требуется время (загрузка), и я хотел бы сохранить ссылки на растровые изображения между изменениями lifecyle для более быстрого доступа.Android - Где хранить сгенерированные растровые изображения?
Мой вопрос: есть ли лучшее место для хранения моих сгенерированных растровых изображений? Я думал о создании статической библиотеки хранения в моей базовой деятельности, что нужно было бы перезагрузить, только когда приложение полностью удалено из памяти (выключение, другие приложения потребуют ресурсов, 30-минутный перезапуск и т. Д.).
В идеале, я хотел бы, чтобы пользователь мог вернуться на экран заголовка, нажать кнопку «Возобновить» и в onCreate
. У меня только есть доступ к резидентным растровым ссылкам вместо того, чтобы загружать их из хранилища еще раз. По этой причине я не думаю, что Activity.onRetainNonConfigurationInstance
- это то, что мне нужно.
В качестве альтернативы, есть ли лучший способ обработать несколько сгенерированных растровых изображений, чем то, что я делаю, или план, который я описал?
У меня было ощущение, что идея кэша не будет летать. Я бы только помещал растровые изображения там (так что нет утечек Контекста), но я предполагаю, что мне просто нужно было подтолкнуть в правильном направлении. Похоже, onRetain - это путь. – Josh