Кэш моего приложения увеличивается из-за Firebase UI - PullRequest
1 голос
/ 21 марта 2020

Я разрабатываю приложение, которое должно быть выпущено к концу этой недели. Но я нашел странную вещь в своем приложении. Когда я проверил информацию о хранилище приложения, я обнаружил, что данные кеша для моего приложения быстро увеличиваются при загрузке данных. Я использую Firebase UI для загрузки данных из Cloud Firestore в мой Recycler View. Это содержит изображения тоже. Я как-то пришел к выводу, что это все потому, что изображения, загруженные с сервера, загружаются повторно, что увеличивает мой кэш. Я хочу знать, как уменьшить размер кэша, потому что он потребляет много памяти пользователя, как сейчас.

1 Ответ

1 голос
/ 21 марта 2020

Если вы хотите ограничить размер кэша, вам необходимо установить его, прежде чем выполнять какие-либо запросы. Документация для настройки размера кэша говорит, что вы можете использовать setCacheSizeBytes() следующим образом:

Когда постоянство включено, Cloud Firestore кэширует каждый документ, полученный от серверной части для автономного доступа , Cloud Firestore устанавливает порог по умолчанию для размера кэша. После превышения значения по умолчанию Cloud Firestore периодически пытается очистить старые, неиспользуемые документы. Вы можете настроить другой порог размера кэша или полностью отключить процесс очистки:

FirebaseFirestoreSettings settings = new FirebaseFirestoreSettings.Builder()
        .setCacheSizeBytes(FirebaseFirestoreSettings.CACHE_SIZE_UNLIMITED)
        .build();
db.setFirestoreSettings(settings);
...