folioreader / folioreader-android Goto Github PK
View Code? Open in Web Editor NEWA Java ePub reader and parser framework for Android.
License: BSD 3-Clause "New" or "Revised" License
A Java ePub reader and parser framework for Android.
License: BSD 3-Clause "New" or "Revised" License
Hi
From the read me and from the screenshot, it seems that this library doesn't have support for page curl effect. Is there any plan to add that?
Regards,
Pritam
How can I trigger onTouchListener or onClickListener for webview in epub reader?
Please help :(
We wanted to implement ourselves, but couldn't get total number of pages in the book. All we can get is total number of pages in current chapter
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.
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.
i have sample book written in Amharic, but the reader is not reading the book content
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)
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
Is there a way to retrieve the last page that was read before the user close the reader?
Thanks
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?
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..
@mahavir-jain
as the title says, I can not change texts EPUB.
The application stops when trying to use the features of reading.
use exactly the Codico like this in the last update.
ebook here(by google doc): https://github.com/pablo384/ebook.git
video here: https://youtu.be/VY8jFxESkL4
thanks for your cooperation and work
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.
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?
highlights crash the app in the new release when clicking in the highlighted text
Increasing/Decreasing the font size causing highlighted text onclick redirection to older webViewPosition .
.
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>``
Anybody tried to implement search feature? Where to start if I want to implement myself?
CardView disappear when i attach folioreader to my app
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
If the ebook have a index page, when we click on the link, doesnt go to the page. doesnt do anything.
Can you help me?
Best regards.
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
the reader is not showing me images, audios android the links are not working what should i do
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..
Hope to get the solution
I have a book, the content has lots of "span", when opened book, cannot read. iOS version is ok, but only show a part of content. Can I send the book to your email? Thanks a lot.
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
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)
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.
As the title says, do not read books made by me, google doc, caliber, sigil and more
Nose not read correctly because the epub I do, even just edit text in a epub he read properly and then do not read the amendment.
Sigil use a partition with Windows 10, is configured to EPUB 3, I do not understand why not read my epub correctly.
please help!
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
@mahavir-jain
so far everything is fine, there are only a few details.
the table of contents does not recognize it, and this in GoogleDoc / nav.xhtml
and eBook reading aloud in Spanish does not pronounce correctly.
Ebook with table of contents: https://github.com/pablo384/ebook.git
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)
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
when changing the font the image becomes invisible in addition the toolbar of the reader is invisible in pre-lollipop devices
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)
When we highlight a paragraph it is not highlighting, but add a new line in the paragraph.
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?
When I compile 'com.folioreader:folioreader:0.2.5',The book opens only chapter, no content, content is blank.How to solve
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.