Bug - opening PDFs from external app with Neo-reader

I really like the Neo reader, but the library function not too much. I use Mendeley and Browzine for selecting/opening pdfs (medical literature). But the internal pdf browsers of these apps are nothing like Neo reader. But if I choose “open with” and then Neo reader; the Neo reader opens but it doesn’t load any pdf.
First exporting to dropbox and save a local copy, then opening the same pdf from the library will work, but this is cumbersome. It’s even sometimes hard to find the titles, becaus the pdf-titles are not properly given nor categorized.
I really hope this bug will be fixed, or that anyone has a more simple workaround for me!

2 Likes

Hi, the Mendeley and Browzine both are third party apps, they might not be compatible well with our devices. But thank you for your kind suggestion, I’ll forward it to our R&D team. Thank you.

Hi @Afra,
I wanted to report the same thing, so I’m attaching it here. Please also forward to R&D as well.

As far as I can tell there’s a problem when Neo is asked to open a document from a File ContentProvider. This would be a problem that has to be fixed inside Neo and applies to all similar usages. For example Cannot open pdf from google drive is the exact same problem.
I have the problem when opening a PDF from Nextcloud Client, on Max2.

Here is the relevant stack trace (I removed stuff relating only to wifi and screen updates):

07-23 13:02:53.740   554  2530 I ActivityManager: START u0 {act=android.intent.action.CHOOSER flg=0x3 cmp=android/com.android.internal.app.ChooserActivity clip={application/pdf U:content://org.nextcloud.files/external_files/emulated/0/Android/media/com.nextcloud.client/nextcloud/henryk%40REDACTED/REDACTED.pdf} (has extras)} from uid 10059 on display 0
07-23 13:02:53.743  2743  2743 V FileDisplayActivity: onPause() start
07-23 13:02:53.749  2743  2743 D FileDisplayActivity: onPause() ending
07-23 13:02:53.750  2743  2743 V FileDisplayActivity: onPause() end
07-23 13:02:54.019  6376  6389 D mali_winsys: EGLint new_window_surface(egl_winsys_display*, void*, EGLSurface, EGLConfig, egl_winsys_surface**, egl_color_buffer_format*, EGLBoolean) returns 0x3000
07-23 13:02:54.284   554   575 I ActivityManager: Displayed android/com.android.internal.app.ChooserActivity: +534ms
07-23 13:02:54.354  2743  2743 V FileDisplayActivity: onSaveInstanceState() start
07-23 13:02:54.355  2743  2743 D FileDisplayActivity: onSaveInstanceState(Bundle) starting
07-23 13:02:54.355  2743  2743 D ExtendedListFragment: onSaveInstanceState()
07-23 13:02:54.357  2743  2743 V FileDisplayActivity: onSaveInstanceState() end
07-23 13:03:25.005   554  1064 I ActivityManager: START u0 {act=android.intent.action.VIEW dat=content://org.nextcloud.files/external_files/emulated/0/Android/media/com.nextcloud.client/nextcloud/henryk@REDACTED/REDACTED.pdf typ=application/pdf flg=0x3000003 cmp=com.onyx.kreader/.ui.ReaderTabHostActivity} from uid 10059 on display 0
07-23 13:03:25.082   554   575 D WindowStateAnimator: rk_debug2 Starting com.onyx.kreader_Force_To_Dual
07-23 13:03:25.110  2743  2743 D FileDisplayActivity: onStop() ending
07-23 13:03:25.282  4021  4021 E ReaderTab3Activity: onDocumentDeactivated
07-23 13:03:25.287  4076  4076 E ReaderTab1Activity: onDocumentDeactivated
07-23 13:03:25.343  4021  4021 E ReaderTab3Activity: onDocumentDeactivated
07-23 13:03:25.416  4238  4238 E ReaderTab4Activity: onDocumentDeactivated
07-23 13:03:25.424  4021  4021 E ReaderTab3Activity: onDocumentDeactivated
07-23 13:03:25.482  4076  4076 E ReaderTab1Activity: onDocumentDeactivated
07-23 13:03:25.507  4021  4021 E ReaderTab3Activity: onDocumentDeactivated
07-23 13:03:25.513  4076  4076 E ReaderTab1Activity: onDocumentDeactivated
07-23 13:03:25.616  2340  2360 D mali_winsys: EGLint new_window_surface(egl_winsys_display*, void*, EGLSurface, EGLConfig, egl_winsys_surface**, egl_color_buffer_format*, EGLBoolean) returns 0x3000
07-23 13:03:25.802   192   192 I hwcomposer: update_to_display(): upd_data -- marker[17505] waveform_mode = 255, update_mode = 0, Rect[0 0 2200 1650]
07-23 13:03:25.810  2340  2340 E CursorWindow: Failed to read row 0, column 0 from a CursorWindow which has 1 rows, 0 columns.
07-23 13:03:25.877  2340  2340 W System.err: java.lang.IllegalStateException: Couldn't read row 0, col 0 from CursorWindow.  Make sure the Cursor is initialized correctly before accessing data from it.
07-23 13:03:25.878  2340  2340 W System.err:    at android.database.CursorWindow.nativeGetString(Native Method)
07-23 13:03:25.878  2340  2340 W System.err:    at android.database.CursorWindow.getString(CursorWindow.java:438)
07-23 13:03:25.878  2340  2340 W System.err:    at android.database.AbstractWindowedCursor.getString(AbstractWindowedCursor.java:54)
07-23 13:03:25.878  2340  2340 W System.err:    at android.database.CursorWrapper.getString(CursorWrapper.java:137)
07-23 13:03:25.878  2340  2340 W System.err:    at com.onyx.android.sdk.utils.FileUtils.a(SourceFile:382)
07-23 13:03:25.878  2340  2340 W System.err:    at com.onyx.android.sdk.utils.FileUtils.a(SourceFile:369)
07-23 13:03:25.878  2340  2340 W System.err:    at com.onyx.android.sdk.utils.FileUtils.getRealFilePathFromUri(SourceFile:344)
07-23 13:03:25.878  2340  2340 W System.err:    at com.onyx.kreader.ui.ReaderTabHostActivity.z(SourceFile:925)
07-23 13:03:25.878  2340  2340 W System.err:    at com.onyx.kreader.ui.ReaderTabHostActivity.y(SourceFile:883)
07-23 13:03:25.878  2340  2340 W System.err:    at com.onyx.kreader.ui.ReaderTabHostActivity.m(SourceFile:54)
07-23 13:03:25.878  2340  2340 W System.err:    at com.onyx.kreader.ui.ReaderTabHostActivity$16.onGlobalLayout(SourceFile:376)
07-23 13:03:25.878  2340  2340 W System.err:    at android.view.ViewTreeObserver.dispatchOnGlobalLayout(ViewTreeObserver.java:912)
07-23 13:03:25.878  2340  2340 W System.err:    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2027)
07-23 13:03:25.878  2340  2340 W System.err:    at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1165)
07-23 13:03:25.878  2340  2340 W System.err:    at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6106)
07-23 13:03:25.878  2340  2340 W System.err:    at android.view.Choreographer$CallbackRecord.run(Choreographer.java:858)
07-23 13:03:25.878  2340  2340 W System.err:    at android.view.Choreographer.doCallbacks(Choreographer.java:670)
07-23 13:03:25.878  2340  2340 W System.err:    at android.view.Choreographer.doFrame(Choreographer.java:606)
07-23 13:03:25.878  2340  2340 W System.err:    at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:844)
07-23 13:03:25.878  2340  2340 W System.err:    at android.os.Handler.handleCallback(Handler.java:743)
07-23 13:03:25.878  2340  2340 W System.err:    at android.os.Handler.dispatchMessage(Handler.java:95)
07-23 13:03:25.878  2340  2340 W System.err:    at android.os.Looper.loop(Looper.java:148)
07-23 13:03:25.878  2340  2340 W System.err:    at android.app.ActivityThread.main(ActivityThread.java:5417)
07-23 13:03:25.878  2340  2340 W System.err:    at java.lang.reflect.Method.invoke(Native Method)
07-23 13:03:25.879  2340  2340 W System.err:    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:772)
07-23 13:03:25.879  2340  2340 W System.err:    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:662)
07-23 13:03:25.895  2340  2347 W CursorWrapperInner: Cursor finalized without prior close()
07-23 13:03:25.987   554   575 I ActivityManager: Displayed com.onyx.kreader/.ui.ReaderTabHostActivity: +878ms

My current build is 2018-07-03_15-47_1.9.0_cd8c355, kreader version is versionName=7848 - 9505244

1 Like

The same problem occurs when I download a pdf with the built in browser, which results a notification icon in the icon bar, and later I tap on that icon (“download succeded” message) and choose noe reader to open with. Neo reader opens, but not with the fresh pdf. Later I can open the same pdf from the Download folder using the storage browser, so it is not the particular pdf that is damaged.

1 Like

Hi @Afra since “BOOX Note S boasts open operating system Android 6 Marshmallow, which takes BOOX to a whole new level. More choices, more E-books.” (as it is said in the website, http://www.boox.com/boox-notes/) it is no excuse that Android apps which would be otherwise fully functional, not being able to interoperate with NeoReader (which is merely another Android app).

I would really appreciate it if you would tell us when R&D would fix the bug.

Thanks!

And suddenly, with 2.1.2 it is fixed! Perfect for my workflow as i can nog read and annotate pdfs directly in neoreader from Mendeley, Read, BrowZine and many other apps

1 Like