andob / android-awt

Combination of code from Apache Harmony and Apache Commons Imaging to replace classes in java.awt for Android.
Apache License 2.0
28 stars 15 forks source link

UnsatisfiedLinkError #1

Closed abbasalibohra closed 3 years ago

abbasalibohra commented 5 years ago

I started with a fresh install of android emulator with an API 29 x86 config.

While generating the pdf using the OpenPDF library, the app crashes with the following logs on the addImage() function:

Do let me know what additional info do you need and how can I help in resolving this.

2019-09-20 16:34:54.363 6345-6345/com.vaibhavkalpe.android.khatabook E/AndroidRuntime: FATAL EXCEPTION: main Process: com.vaibhavkalpe.android.khatabook, PID: 6345 java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.vaibhavkalpe.android.khatabook-jPY_d8GXUpNekawo2AluSw==/base.apk"],nativeLibraryDirectories=[/data/app/com.vaibhavkalpe.android.khatabook-jPY_d8GXUpNekawo2AluSw==/lib/x86, /system/lib, /system/product/lib]]] couldn't find "liblcmm.so" at java.lang.Runtime.loadLibrary0(Runtime.java:1067) at java.lang.Runtime.loadLibrary0(Runtime.java:1007) at java.lang.System.loadLibrary(System.java:1667) at org.apache.harmony.awt.Utils$2.run(Utils.java:44) at java.security.AccessController.doPrivileged(AccessController.java:69) at org.apache.harmony.awt.Utils.loadLibrary(Utils.java:42) at org.apache.harmony.awt.gl.color.NativeCMM$1.run(NativeCMM.java:81) at org.apache.harmony.awt.gl.color.NativeCMM$1.run(NativeCMM.java:79) at java.security.AccessController.doPrivileged(AccessController.java:43) at org.apache.harmony.awt.gl.color.NativeCMM.loadCMM(NativeCMM.java:78) at org.apache.harmony.awt.gl.color.NativeCMM.<clinit>(NativeCMM.java:91) at org.apache.harmony.awt.gl.color.NativeCMM.cmmGetProfileElementSize(Native Method) at java.awt.color.ICC_Profile.getData(ICC_Profile.java:413) at java.awt.color.ICC_Profile.getIntFromHeader(ICC_Profile.java:734) at java.awt.color.ICC_Profile.getNumComponents(ICC_Profile.java:478) at com.lowagie.text.pdf.PdfICCBased.<init>(PdfICCBased.java:81) at com.lowagie.text.pdf.PdfWriter.addDirectImageSimple(PdfWriter.java:2996) at com.lowagie.text.pdf.PdfWriter.addDirectImageSimple(PdfWriter.java:2938) at com.lowagie.text.pdf.PdfContentByte.addImage(PdfContentByte.java:1225) at com.lowagie.text.pdf.PdfContentByte.addImage(PdfContentByte.java:1138) at com.vaibhavkalpe.android.khatabook.UI.CustomerCardActivity.createImageCell(CustomerCardActivity.kt:227) at com.vaibhavkalpe.android.khatabook.UI.CustomerCardActivity.generatePDF(CustomerCardActivity.kt:164) at com.vaibhavkalpe.android.khatabook.UI.CustomerCardActivity$GetImageWork.onPostExecute(CustomerCardActivity.kt:295) at android.os.AsyncTask.finish(AsyncTask.java:755) at android.os.AsyncTask.access$900(AsyncTask.java:192) at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:772) at android.os.Handler.dispatchMessage(Handler.java:107) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7343) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:933)  

fakekowa commented 3 years ago

I'm getting the same error here, did you ever find any solution?

Edit: It seems like using an earlier API level of android like API level 28 solves the problem, not sure how to work around it on newer versions though

andob commented 3 years ago

duplicate of this issue. Will move the discussion there.