Как я могу освободить используемую память от загрузки и просмотра изображения в React Native?

#react-native #memory-leaks #react-navigation

Вопрос:

Приложение использует RNFetchBlob для получения изображения с сервера. Это извлекается и сохраняется локально по щелчку мыши. Как только изображение загружается в представление — с помощью <Image/> предоставленного компонента react-native — я вижу в профилировщике XCode, что использование памяти увеличивается, как и ожидалось.

Затем пользователь может вернуться назад, что делается navigation.goBack() с react-navigation помощью пакета. Тогда я ожидал бы увидеть, что память, используемая для этого экрана, будет полностью освобождена. В то время как на самом деле происходит то, что память занята и никогда не освобождается. Приведенный ниже GIF должен объяснить, что я имею в виду:

введите описание изображения здесь

Я не понимаю, как освободить эту память, будь то вручную или автоматически.

Я пытался:

  • реагируй-родной-быстрый-образ
  • разблокируйте файл с помощью RNFetchBlob.разблокируйте
  • сброс состояния навигации
  • Добавление условия в isFocused, которое возвращает пустое значение, если оно не в фокусе
  • Только удаленный просмотр файла

Любой совет был бы очень признателен!