FolioReader / FolioReader-Android

A Java ePub reader and parser framework for Android.
BSD 3-Clause "New" or "Revised" License
2.24k stars 710 forks source link

Why does the book not open from the storage #489

Open anton0801 opened 3 years ago

anton0801 commented 3 years ago

Issue / Feature - Why does the book not open from the storage FolioReader version - 0.5.4 FolioReader Stock / Modified -
Android SDK - 30 Mobile / Tablet / Emulator Info -
Crash / Error - Could not generate container java.util.zip.ZipException: error in opening zip file and Failed to initialize book kotlin.KotlinNullPointerException

Steps to reproduce / Describe in detail - My code for getting a file from the storage: val fileName = bookPath.split("/") val file = requireActivity().getFileStreamPath(fileName[fileName.size - 1]) reader.openBook(file.absolutePath) My code for write book in storage:

` try { val file = requireActivity().getFileStreamPath(book.name.replace(" ", "_") + ".epub") val writer = FileWriter(file)

    GlobalScope.launch(Dispatchers.IO) {
        val url = URL(book.fileUrl)
        val reader = BufferedReader(InputStreamReader(url.openStream()))
        var line = reader.readLine()
        val result = StringBuilder()
        while (line != null) {
            result.append(reader.readLine())
            writer.append(result.toString() + "\n")
            line = reader.readLine()
        }
        Log.d("DownloadBookMy", "writeFile(): $result")
        writer.flush()
    } catch (e: IOException) {
        showToast(getString(R.string.some_went_error, e.message))
        e.printStackTrace()
    } catch (e: Exception) {
        showToast(getString(R.string.some_went_error, e.message))
        e.printStackTrace()
    }`

When I open a book, their storage gives me errors: Could not generate container java.util.zip.ZipException: error in opening zip file at java.util.zip.ZipFile.open (Native Method) at java.util.zip.ZipFile. <init> (ZipFile.java:265) at java.util.zip.ZipFile. <init> (ZipFile.java:187) at java.util.zip.ZipFile. <init> (ZipFile.java:158) at org.readium.r2.streamer.container.ContainerEpub. <init> (ContainerEpub.kt: 56) at org.readium.r2.streamer.parser.EpubParser.generateContainerFrom (EpubParser.kt: 55) at org.readium.r2.streamer.parser.EpubParser.parse (EpubParser.kt: 71) at com.folioreader.ui.activity.FolioActivity.initBook (FolioActivity.kt: 477) at com.folioreader.ui.activity.FolioActivity.setupBook (FolioActivity.kt: 447) at com.folioreader.ui.activity.FolioActivity.onCreate (FolioActivity.kt: 296) at android.app.Activity.performCreate (Activity.java:8086) at android.app.Activity.performCreate (Activity.java:8074) at android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1313) at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:3755) at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3961) at android.app.servertransaction.LaunchActivityItem.execute (LaunchActivityItem.java:91) at android.app.servertransaction.TransactionExecutor.executeCallbacks (TransactionExecutor.java:149) at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:103) at android.app.ActivityThread $ H.handleMessage (ActivityThread.java:2386) at android.os.Handler.dispatchMessage (Handler.java:107) at android.os.Looper.loop (Looper.java:213) at android.app.ActivityThread.main (ActivityThread.java:8178) at java.lang.reflect.Method.invoke (Native Method) at com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run (RuntimeInit.java:513) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1101) and Failed to initialize book kotlin.KotlinNullPointerException at com.folioreader.ui.activity.FolioActivity.initBook (FolioActivity.kt: 493) at com.folioreader.ui.activity.FolioActivity.setupBook (FolioActivity.kt: 447) at com.folioreader.ui.activity.FolioActivity.onCreate (FolioActivity.kt: 296) at android.app.Activity.performCreate (Activity.java:8086) at android.app.Activity.performCreate (Activity.java:8074) at android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1313) at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:3755) at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3961) at android.app.servertransaction.LaunchActivityItem.execute (LaunchActivityItem.java:91) at android.app.servertransaction.TransactionExecutor.executeCallbacks (TransactionExecutor.java:149) at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:103) at android.app.ActivityThread $ H.handleMessage (ActivityThread.java:2386) at android.os.Handler.dispatchMessage (Handler.java:107) at android.os.Looper.loop (Looper.java:213) at android.app.ActivityThread.main (ActivityThread.java:8178) at java.lang.reflect.Method.invoke (Native Method) at com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run (RuntimeInit.java:513) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1101)

shanusingh3 commented 3 years ago

any luck?

mikeruto commented 2 years ago

same error here