Open a-klimashevsky opened 11 years ago
Gotta find an answer to this problem? I am also having the same problem, and could not solve it.
not yet
Good news,
I managed to solve the problem:
Performing the above steps, probably the error will be corrected.
Steps to solve "android library projects cannot be launched":
I hope I helped!
Bye!
For anyone that doesn't want to have to recompile the .jar after making the fix @taynanb detailed above, I've made a fork containing this fix and also fixes @mcnerthney has committed. It can be found here: https://github.com/preichelt/Android-Pdf-Viewer-Library and it contains the recompiled .jar.
Thanks @taynanb, @BarisCirika and @mcnerthney for your work
@taynanb I followed Your instructions and tried @preichelt 's fork, but i get the same error in both cases:
Unable to execute dex: Multiple dex files define Lorg/bouncycastle/crypto/CipherParameters; Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lorg/bouncycastle/crypto/CipherParameters;
Any ideas how to fix that ?
I don't know if anyone is still interested, but this Exception is caused by a bug in Android's MappedByteBuffer class.
The solution is not to use rewind() on these Buffers (ie replace every ".rewind()" to ".position(0)", in all source files (even in the Sun's pdf viewer package, everywhere)
During page renreding I catched this error. Also page was rendered incorect. Stack trace 12-18 13:01:53.501: E/APV.PDFRenderer(5425): null 12-18 13:01:53.501: E/APV.PDFRenderer(5425): java.nio.BufferUnderflowException 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at java.nio.Buffer.checkGetBounds(Buffer.java:177) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at java.nio.DirectByteBuffer.get(DirectByteBuffer.java:41) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at java.nio.MappedByteBufferAdapter.get(MappedByteBufferAdapter.java:144) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at java.nio.ByteBuffer.get(ByteBuffer.java:384) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at net.sf.andpdf.nio.NioByteBuffer.get(NioByteBuffer.java:99) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.decode.DCTDecode.decode(DCTDecode.java:73) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.decode.PDFDecoder.decodeStream(PDFDecoder.java:102) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.PDFObject.decodeStream(PDFObject.java:334) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.PDFObject.getStream(PDFObject.java:266) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.PDFObject.getStream(PDFObject.java:260) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.PDFImage.getImage(PDFImage.java:224) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.PDFRenderer.drawImage(PDFRenderer.java:374) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.PDFImageCmd.execute(PDFPage.java:654) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.PDFRenderer.iterate(PDFRenderer.java:674) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.BaseWatchable.run(BaseWatchable.java:101) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.BaseWatchable.execute(BaseWatchable.java:263) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.BaseWatchable.go(BaseWatchable.java:197) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at com.sun.pdfview.PDFPage.getImage(PDFPage.java:237) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at net.sf.andpdf.pdfviewer.PdfViewerActivity.showPage(PdfViewerActivity.java:794) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at net.sf.andpdf.pdfviewer.PdfViewerActivity.access$12(PdfViewerActivity.java:773) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at net.sf.andpdf.pdfviewer.PdfViewerActivity$3.run(PdfViewerActivity.java:259) 12-18 13:01:53.501: E/APV.PDFRenderer(5425): at java.lang.Thread.run(Thread.java:856)