Android Question UnsatisfiedLinkError: Serial lib mismatch with OpenCV3

VittorioBarile

Member
Licensed User
Hello,

i have a big issue and i don't know how to deal with UnsatisfiedLinkError exception.

1600933797829.png


I'm using my own library wrapped from FriendlyThings API for communicate with serial - PWM - I2C - GPIO for NanoPC T2
When i call some methods from this library it will mismatch with OpenCV3 library and pop this exception.

How could i fix it?
 

JordiCP

Well-Known Member
Licensed User
(pls post logs as text, otherwise it's realy difficult to read them from a mobile device 👀)
Can't see how it can be related to opencv itself, perhaps it is related to the .so files diferent architectures folder names conflicting.
Where are the .so files located in your lib?
 

VittorioBarile

Member
Licensed User
UnsatisfiedLinkError:
[COLOR=rgb(184, 49, 47)]java.lang.UnsatisfiedLinkError: No implementation found for int com.friendlyarm.FriendlyThings.HardwareControler.write(int, byte[]) (tried Java_com_friendlyarm_FriendlyThings_HardwareControler_write and Java_com_friendlyarm_FriendlyThings_HardwareControler_write__I_3B)
    at com.friendlyarm.FriendlyThings.HardwareControler.write(Native Method)
    at serial.serial.writeStringToport_1(serial.java:236)
    at b4a.TestSeparo.main._btnleggipeso_click(main.java:593)
    at java.lang.reflect.Method.invoke(Native Method)
    at anywheresoftware.b4a.BA.raiseEvent2(BA.java:213)
    at anywheresoftware.b4a.BA.raiseEvent2(BA.java:197)
    at anywheresoftware.b4a.BA.raiseEvent(BA.java:193)
    at anywheresoftware.b4a.objects.ViewWrapper$1.onClick(ViewWrapper.java:80)
    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:6121)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)[/COLOR]

The name of that lib is RS232. Thank you for your answer ;)
 

Attachments

JordiCP

Well-Known Member
Licensed User
As a test, can you rename your "additional/lib/armeabi" folder to "additional/lib/armeabi-v7a", recompile your lib and see if it works?

If it works but then conflicts with other libs, the other option would be to unzip the OpenCV3,jar lib and do the opposite step (rename 'armeabi-v7a' to 'armeabi' and zip it again.
 

VittorioBarile

Member
Licensed User
If it works but then conflicts with other libs, the other option would be to unzip the OpenCV3,jar lib and do the opposite step (rename 'armeabi-v7a' to 'armeabi' and zip it again.
you solved my problem! Really thanks! 🥰
 
Top