From 2939a5e8dc976f0efe3359f2a3f23539a4f0a83e Mon Sep 17 00:00:00 2001 From: acclorite Date: Wed, 7 Aug 2024 14:42:05 +0300 Subject: [PATCH] Check if Environment.getExternalStorageDirectory() is MOUNTED. --- .../book_story/data/repository/BookRepositoryImpl.kt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/src/main/java/ua/acclorite/book_story/data/repository/BookRepositoryImpl.kt b/app/src/main/java/ua/acclorite/book_story/data/repository/BookRepositoryImpl.kt index d524098c..1106263f 100644 --- a/app/src/main/java/ua/acclorite/book_story/data/repository/BookRepositoryImpl.kt +++ b/app/src/main/java/ua/acclorite/book_story/data/repository/BookRepositoryImpl.kt @@ -485,6 +485,16 @@ class BookRepositoryImpl @Inject constructor( .map { bookMapper.toBook(it) } val primaryDirectory = Environment.getExternalStorageDirectory() + + if ( + !primaryDirectory.exists() || + (Environment.getExternalStorageState() != Environment.MEDIA_MOUNTED && + Environment.getExternalStorageState() != Environment.MEDIA_MOUNTED_READ_ONLY) + ) { + emit(Resource.Success(null)) + return@flow + } + val allFiles = getAllFilesInDirectory(primaryDirectory) if (allFiles.isEmpty()) {