GithubHelp home page GithubHelp logo

folioreader / folioreader-android Goto Github PK

View Code? Open in Web Editor NEW
2.2K 81.0 706.0 104.93 MB

A Java ePub reader and parser framework for Android.

License: BSD 3-Clause "New" or "Revised" License

Java 29.52% CSS 0.55% JavaScript 55.11% Kotlin 14.81%
epub-reader epub java night-mode custom-fonts android highlight

folioreader-android's Introduction

FolioReader logo

Build Status

FolioReader-Android is an EPUB reader written in Java and Kotlin.

Features

  • Custom Fonts
  • Custom Text Size
  • Themes / Day mode / Night mode
  • Text Highlighting
  • List / Edit / Delete Highlights
  • Handle Internal and External Links
  • Portrait / Landscape
  • Reading Time Left / Pages left
  • In-App Dictionary
  • Media Overlays (Sync text rendering with audio playback)
  • TTS - Text to Speech Support
  • Parse epub cover image
  • PDF support
  • Book Search
  • Add Notes to a Highlight
  • Better Documentation
  • Last Read Locator
  • Horizontal Reading
  • Distraction Free Reading

Demo

Custom Fonts

Custom fonts

Day and Night Mode

Day night mode

Text Highlighting

Highlight

Media Overlays

Media Overlay

Gradle

Add following dependency to your root project build.gradle file:

allprojects {
    repositories {
        ...
        jcenter()
        maven { url "https://jitpack.io" }
        ...
    }
}

Add following dependency to your app module build.gradle file:

dependencies {
    ...
    implementation "com.folioreader:folioreader:0.5.4"
    ...
}

Enable Multidex support

Enable Multidex support as explained in this Android Doc

Usage

Get singleton object of FolioReader:

FolioReader folioReader = FolioReader.get();

Call the function openBook():

opening book from assets -
folioReader.openBook("file:///android_asset/TheSilverChair.epub");
opening book from raw -
folioReader.openBook(R.raw.accessible_epub_3);

WIKI

Reporting Issue

See KNOWN_ISSUES and CHANGELOG first before reporting any issue.
Please follow Issue Template to report any issue.

Share your application

If you are using FolioReader in your application, share your application link in this issue

Credits

  1. SwipeLayout
  2. r2-streamer-kotlin
  3. Pearson Dictionaries
  4. rangy

Author

Heberti Almeida

CodeToArt Technology

Donations

This project needs you! If you would like to support this project's further development, the creator of this project or the continuous maintenance of this project, feel free to donate. Your donation is highly appreciated. Thank you!

PayPal

  • Donate 5 $: Thank's for creating this project, here's a tea (or some juice) for you!
  • Donate 10 $: Wow, I am stunned. Let me take you to the movies!
  • Donate 15 $: I really appreciate your work, let's grab some lunch!
  • Donate 25 $: That's some awesome stuff you did right there, dinner is on me!
  • Donate 50 $: I really really want to support this project, great job!
  • Donate 100 $: You are the man! This project saved me hours (if not days) of struggle and hard work, simply awesome!
  • Of course, you can also choose what you want to donate, all donations are awesome!

License

FolioReaderKit is available under the BSD license. See the LICENSE file.

folioreader-android's People

Contributors

adrianorezena avatar avez321 avatar berteodosio avatar egidijusk avatar gautamchibde avatar hebertialmeida avatar hrishikesh-kadam avatar jfox-sk avatar kamadi avatar kishanviramgama avatar mahavir155 avatar n0m0r3pa1n avatar nikhil-z avatar playscforever avatar ppamorim avatar rodrigorsa avatar salihaksit7 avatar sameer018 avatar semper-viventem avatar shrikant-b avatar taku44 avatar thestr4ng3r avatar yh54321 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

folioreader-android's Issues

Font size is not changing and application is crashing when changing font size.

When user changed seekbar the library is calling onConfigChange method
` @OverRide
public void onConfigChange() {

    int position = mFolioPageViewPager.getCurrentItem();
    //reload previous, current and next fragment
    Fragment page;
    if (position != 0) {
        page = getFragment(position - 1);
        ((FolioPageFragment) page).reload();
    }
    page = getFragment(position);
    ((FolioPageFragment) page).reload();
    if (position < mSpineReferences.size()) {
        page = getFragment(position + 1);
        if(page!=null) {
            ((FolioPageFragment) page).reload();
        }

    }
}`

But the problem is for this statement "((FolioPageFragment) page).reload(); " because it is returning null fragment. How to fix this problem?

I get error after including flioreader in gradel.

Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.

com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/ASL2.0
File1: C:\Users\ssa.gradle\caches\modules-2\files-2.1\org.codehaus.jackson\jackson-mapper-asl\1.9.13\1ee2f2bed0e5dd29d1cb155a166e6f8d50bbddb7\jackson-mapper-asl-1.9.13.jar
File2: C:\Users\ssa.gradle\caches\modules-2\files-2.1\org.codehaus.jackson\jackson-core-asl\1.9.13\3c304d70f42f832e0a86d45bd437f692129299a4\jackson-core-asl-1.9.13.jar

saving state of reading

how could i return to that page which i was reading after back button pressed and opening the book again in addition how to bookmark the that specific page thank you

Error at open project or add dependency

Hi
When i try to open the Folio Reader project, i get the following error message
Error:Cause: com/android/build/gradle/internal/model/DefaultAndroidProject : Unsupported major.minor version 52.0

When i try to add the dependency compile 'com.folioreader:folioreader:0.2.3' to a sample project i get the following message
Error:(7, 13) Failed to resolve: com.folioreader:folioreader:0.2.3

What could be the problem?

Regards

HighlightListTable

In version 0.2.5. Highlightlist table is not visible for api level <=19 devices . In some books all the toc content list is not shown in highlight list table and their redirection is not appropriate.

Sample book : https://we.tl/He5cnJEQXH

Clicking the hamburger icon at the top causes the app to crash

This happens on Nexus 5X with Android 7.1. Please tell me how can I help if I have to debug something!

Here is the crash

EDIT:
Wow, you guys pass the whole book as a serializable to the next screen everywhere, why not just work with the filePath and read it everywhere you need it? I will surely check this out.

01-26 23:06:10.507 26802-26802/info.chitanka.android E/JavaBinder: !!! FAILED BINDER TRANSACTION !!! (parcel size = 1856584)
01-26 23:06:10.507 26802-26802/info.chitanka.android D/AndroidRuntime: Shutting down VM
01-26 23:06:10.511 26802-26802/info.chitanka.android E/AndroidRuntime: FATAL EXCEPTION: main
Process: info.chitanka.android, PID: 26802
java.lang.RuntimeException: Failure from system
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1525)
at android.app.Activity.startActivityForResult(Activity.java:4225)
at android.support.v4.app.BaseFragmentActivityJB.startActivityForResult(BaseFragmentActivityJB.java:50)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:79)
at android.app.Activity.startActivityForResult(Activity.java:4183)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:859)
at com.folioreader.activity.FolioActivity$2.onClick(FolioActivity.java:150)
at android.view.View.performClick(View.java:5637)
at android.view.View$PerformClick.run(View.java:22429)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6119)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
Caused by: android.os.TransactionTooLargeException: data parcel size 1856584 bytes
at android.os.BinderProxy.transactNative(Native Method)
at android.os.BinderProxy.transact(Binder.java:615)
at android.app.ActivityManagerProxy.startActivity(ActivityManagerNative.java:3100)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1518)
at android.app.Activity.startActivityForResult(Activity.java:4225)
at android.support.v4.app.BaseFragmentActivityJB.startActivityForResult(BaseFragmentActivityJB.java:50)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:79)
at android.app.Activity.startActivityForResult(Activity.java:4183)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:859)
at com.folioreader.activity.FolioActivity$2.onClick(FolioActivity.java:150)
at android.view.View.performClick(View.java:5637)
at android.view.View$PerformClick.run(View.java:22429)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6119)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

Showing error when going to ContentHighlightActivity?

FAILED BINDER TRANSACTION !!! (parcel size = 3493604)

java.lang.RuntimeException: android.os.TransactionTooLargeException: data parcel size 3493604 bytes at android.app.ActivityThread$StopInfo.run(ActivityThread.java:3781) at android.os.Handler.handleCallback(Handler.java:751) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6119) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) Caused by: android.os.TransactionTooLargeException: data parcel size 3493604 bytes at android.os.BinderProxy.transactNative(Native Method) at android.os.BinderProxy.transact(Binder.java:615) at android.app.ActivityManagerProxy.activityStopped(ActivityManagerNative.java:3636) at android.app.ActivityThread$StopInfo.run(ActivityThread.java:3773) at android.os.Handler.handleCallback(Handler.java:751)  at android.os.Handler.dispatchMessage(Handler.java:95)  at android.os.Looper.loop(Looper.java:154)  at android.app.ActivityThread.main(ActivityThread.java:6119)  at java.lang.reflect.Method.invoke(Native Method)  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) 

I get error after including flioreader in gradel.How to resolve??????

Error:Execution failed for task ':readbook:transformResourcesWithMergeJavaResForDebug'.

com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK dtd/www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent
File1: D:\Reader\readbook\libs\epublib-core-latest.jar
File2: D:\Reader\readbook\build\intermediates\exploded-aar\com.folioreader\folioreader\0.2.3\jars\classes.jar

Can't read some books.

Im using this library to read ebooks from my app. Recently I found that I can't read some books. Getting following error in Log.

FATAL EXCEPTION: main Process: com.jskaleel.fte, PID: 2165 java.lang.IllegalArgumentException: META-INF is not a constant in com.folioreader.util.AppUtil$FileType at java.lang.Enum.valueOf(Enum.java:200) at com.folioreader.util.AppUtil$FileType.valueOf(AppUtil.java:77) at com.folioreader.util.AppUtil.getTypeOfOPF(AppUtil.java:502) at com.folioreader.util.AppUtil.getPathOPF(AppUtil.java:441) at com.folioreader.activity.FolioActivity.readHTmlString(FolioActivity.java:434) at com.folioreader.activity.FolioActivity.getChapterHtmlContent(FolioActivity.java:413) at com.folioreader.fragments.FolioPageFragment.initWebView(FolioPageFragment.java:172) at com.folioreader.fragments.FolioPageFragment.onCreateView(FolioPageFragment.java:152) at android.support.v4.app.Fragment.performCreateView(Fragment.java:2087) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1113) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1295) at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:801) at android.support.v4.app.FragmentManagerImpl.execSingleAction(FragmentManager.java:1643) at android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:679) at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:143) at com.folioreader.view.DirectionalViewpager.populate(DirectionalViewpager.java:1332) at com.folioreader.view.DirectionalViewpager.populate(DirectionalViewpager.java:1113) at com.folioreader.view.DirectionalViewpager.setAdapter(DirectionalViewpager.java:521) at com.folioreader.activity.FolioActivity.configFolio(FolioActivity.java:356) at com.folioreader.activity.FolioActivity.loadBook(FolioActivity.java:171) at com.folioreader.activity.FolioActivity.access$700(FolioActivity.java:65) at com.folioreader.activity.FolioActivity$3$1.run(FolioActivity.java:161) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:234) at android.app.ActivityThread.main(ActivityThread.java:5526) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

Please help to fix out this.

Paragraph highlight

When we highlight a paragraph it is not highlighting, but add a new line in the paragraph.

Horizontal reading option not available

After comparing from iOS I found horizontal reading option not available.

I have found you guys are very active on iOS repo.

I request you to please give update on android too.

Thank you.

Some Links are not working

Links on Content page(content.xhtml) within a book is not working .

<p class="h2"><strong>CONTENTS</strong></p>
<p class="con1"><a href="04_Chapter01.xhtml#unit1">Unit I</a></p>
<p class="con1"><a href="04_Chapter01.xhtml#unit2">Unit II</a></p>
<p class="con1"><a href="04_Chapter01.xhtml#unit3">Unit III</a></p>
<p class="con1"><a href="04_Chapter01.xhtml#unit4">Unit IV</a></p>
<p class="con1"><a href="04_Chapter01.xhtml#unit5">Unit V</a></p>
<p class="con1"><a href="04_Chapter01.xhtml#unit6">Unit VI</a></p>
</body>``

The reader crashes on changing the orientation

here is the logcat

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.a360ground.reader10/com.folioreader.activity.FolioActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'java.lang.Object java.util.List.get(int)' on a null object reference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2712) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2777) at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4492) at android.app.ActivityThread.access$1000(ActivityThread.java:179) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1468) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:145) at android.app.ActivityThread.main(ActivityThread.java:5972) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194) Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'java.lang.Object java.util.List.get(int)' on a null object reference at com.folioreader.activity.FolioActivity.readHTmlString(FolioActivity.java:458) at com.folioreader.activity.FolioActivity.getChapterHtmlContent(FolioActivity.java:438) at com.folioreader.fragments.FolioPageFragment.initWebView(FolioPageFragment.java:172) at com.folioreader.fragments.FolioPageFragment.onCreateView(FolioPageFragment.java:151) at android.support.v4.app.Fragment.performCreateView(Fragment.java:2074) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1104) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1286) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1268) at android.support.v4.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:2143) at android.support.v4.app.FragmentController.dispatchActivityCreated(FragmentController.java:201) at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:615) at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1234) at android.app.Activity.performStart(Activity.java:6329) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2675) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2777)  at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4492)  at android.app.ActivityThread.access$1000(ActivityThread.java:179)  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1468)  at android.os.Handler.dispatchMessage(Handler.java:102)  at android.os.Looper.loop(Looper.java:145)  at android.app.ActivityThread.main(ActivityThread.java:5972)  at java.lang.reflect.Method.invoke(Native Method)  at java.lang.reflect.Method.invoke(Method.java:372)

Sometimes following error has showing?

W/System.err: java.lang.IllegalStateException: Fragment FolioPageFragment{f42573a} not attached to Activity
W/System.err: at android.support.v4.app.Fragment.getResources(Fragment.java:646)
W/System.err: at android.support.v4.app.Fragment.getString(Fragment.java:668)
W/System.err: at com.folioreader.fragments.FolioPageFragment$4.onJsAlert(FolioPageFragment.java:311)
W/System.err: at com.android.webview.chromium.WebViewContentsClientAdapter.handleJsAlert(WebViewContentsClientAdapter.java:820)
W/System.err: at org.chromium.android_webview.AwContentsClientBridge.handleJsAlert(AwContentsClientBridge.java:233)
W/System.err: at org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method)
W/System.err: at org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:41)
W/System.err: at android.os.Handler.dispatchMessage(Handler.java:102)
W/System.err: at android.os.Looper.loop(Looper.java:148)
W/System.err: at android.app.ActivityThread.main(ActivityThread.java:7325)
W/System.err: at java.lang.reflect.Method.invoke(Native Method)
W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

position mismatch

Hi, A very good repository for highlight text, but i am facing 1 problem i.e. position mismatch of highlight text.
My page size is 1010 X 550 and i code it fit to screen. so while we are launching it in device with resolution 1280 X 800, page automatically scale into 1280 X 720.
But while i am using your code for highlight if i select 1st line word cursor remain in same position and focus goes on 2nd or 3rd line's word and that word highlighted.
So what i can do for it. Please let me know.
Thanks in advance..

epub show image support

present epub file cover with image , if i want to add this feature to this project,what should the best way that i do...please give me some suggests..

How to prevent storing all content in external memory?

FolioReader is working great. But when we want to show an epub it parse(/unzip) the epub book and store all the content in memory under "folioreader" folder. So if anyone checks his mobile memory he will get the ebook resources easily and can misuse the content. How can I prevent this? It will be better if we can store the content inside cache directory and will use from that.

Progress Page

Is there a way to retrieve the last page that was read before the user close the reader?

Thanks

TST causes a crash

When i try to use the TST the app crashes. Giving the following exception:

screen shot 2016-10-13 at 12 13 42

The ePub that i use the free "The Silver Chair". I tried loading it from the assets and raw. But both is giving the same exception when i press play on TST

I have a problem

Error:A problem occurred configuring project ':readbook'.

Could not resolve all dependencies for configuration ':readbook:_debugCompile'.
Could not find com.folioreader:folioreader:0.2.5.
Searched in the following locations:
file:/D:/as/gradle/m2repository/com/folioreader/folioreader/0.2.5/folioreader-0.2.5.pom
file:/D:/as/gradle/m2repository/com/folioreader/folioreader/0.2.5/folioreader-0.2.5.jar
https://jcenter.bintray.com/com/folioreader/folioreader/0.2.5/folioreader-0.2.5.pom
https://jcenter.bintray.com/com/folioreader/folioreader/0.2.5/folioreader-0.2.5.jar
file:/E:/android-sdk-windows/android-sdk-windows/extras/android/m2repository/com/folioreader/folioreader/0.2.5/folioreader-0.2.5.pom
file:/E:/android-sdk-windows/android-sdk-windows/extras/android/m2repository/com/folioreader/folioreader/0.2.5/folioreader-0.2.5.jar
file:/E:/android-sdk-windows/android-sdk-windows/extras/google/m2repository/com/folioreader/folioreader/0.2.5/folioreader-0.2.5.pom
file:/E:/android-sdk-windows/android-sdk-windows/extras/google/m2repository/com/folioreader/folioreader/0.2.5/folioreader-0.2.5.jar
Required by:
Reader:readbook:unspecified

ActivityNotFoundException

I am using this library to show a epub from asset folder. So I wrote below code according to documentation which is available at Github page.

private void openEpub(FolioActivity.EpubSourceType sourceType,String path,int rawID) { Intent intent = new Intent(this, FolioActivity.class); if(rawID!=0) { intent.putExtra(FolioActivity.INTENT_EPUB_SOURCE_PATH, rawID); } else { intent.putExtra(FolioActivity.INTENT_EPUB_SOURCE_PATH, path); } intent.putExtra(FolioActivity.INTENT_EPUB_SOURCE_TYPE, sourceType); startActivity(intent); }

But when I run my application It is showing ActivityNotFoundException - Unable to find explicit activity class {com../com.folioreader.activity.FolioActivity}; have you declared this activity in your AndroidManifest.xml?.
How can I fix this problem?

Business

Hello, I would like to know if this project runs over some sort of licence or if it's open source for commercial use. It's for a little project I'm making.

Highlights

highlights crash the app in the new release when clicking in the highlighted text

How to read epub from internal memory?

According to documentation we can load epub file from asset folder and external memory like SD card. But I have downloaded a book inside my application specific memory (Internal memory). How can open this book using Folio Reader?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.