diff --git a/app/src/main/java/org/kiwix/kiwixmobile/utils/StorageUtils.java b/app/src/main/java/org/kiwix/kiwixmobile/utils/StorageUtils.java
index a2fd44afe..23998c0ec 100644
--- a/app/src/main/java/org/kiwix/kiwixmobile/utils/StorageUtils.java
+++ b/app/src/main/java/org/kiwix/kiwixmobile/utils/StorageUtils.java
@@ -1,15 +1,5 @@
package org.kiwix.kiwixmobile.utils;
-import android.os.Build;
-import android.os.Environment;
-import android.os.StatFs;
-import android.util.Log;
-
-import java.io.File;
-import java.io.IOException;
-import java.text.DecimalFormat;
-import java.util.UUID;
-
public class StorageUtils {
public static String getFileNameFromUrl(String url) {
diff --git a/app/src/main/java/org/kiwix/kiwixmobile/utils/files/FileSearch.java b/app/src/main/java/org/kiwix/kiwixmobile/utils/files/FileSearch.java
index f37cdb817..7cae6930d 100644
--- a/app/src/main/java/org/kiwix/kiwixmobile/utils/files/FileSearch.java
+++ b/app/src/main/java/org/kiwix/kiwixmobile/utils/files/FileSearch.java
@@ -181,17 +181,24 @@ public class FileSearch {
// This is not a great solution as we shouldn't need to fully open our ZIM files to get their metadata
if (ZimContentProvider.canIterate) {
if (ZimContentProvider.setZimFile(filePath) != null) {
- book = new LibraryNetworkEntity.Book();
- book.title = ZimContentProvider.getZimFileTitle();
- book.id = ZimContentProvider.getId();
- book.file = new File(filePath);
- book.size = String.valueOf(ZimContentProvider.getFileSize());
- book.favicon = ZimContentProvider.getFavicon();
- book.creator = ZimContentProvider.getCreator();
- book.publisher = ZimContentProvider.getPublisher();
- book.date = ZimContentProvider.getDate();
- book.description = ZimContentProvider.getDescription();
- book.language = ZimContentProvider.getLanguage();
+ try {
+ book = new LibraryNetworkEntity.Book();
+ book.title = ZimContentProvider.getZimFileTitle();
+ book.id = ZimContentProvider.getId();
+ book.file = new File(filePath);
+ book.size = String.valueOf(ZimContentProvider.getFileSize());
+ book.favicon = ZimContentProvider.getFavicon();
+ book.creator = ZimContentProvider.getCreator();
+ book.publisher = ZimContentProvider.getPublisher();
+ book.date = ZimContentProvider.getDate();
+ book.description = ZimContentProvider.getDescription();
+ book.language = ZimContentProvider.getLanguage();
+ } catch (Exception e) {
+ // TODO 20171215 Consider more elegant approaches.
+ // This is to see if we can catch the exception at all!
+ Log.e("kiwix-filesearch", "Problem parsing a book entry from the library file. ", e);
+ return null;
+ }
}
}
// Return content provider to its previous state
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index 45d4f7ea2..6f179795f 100644
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -62,7 +62,8 @@
+ android:title="@string/pref_wifi_only"
+ android:summary="@string/pref_wifi_only"/>