我们正在使用使用JNI实现的CAN功能。
我昨天刚发现这个错误。当我尝试加载CAN库并在其中运行一个函数时,很少发生'找不到本机'错误的实现。
一旦我重新启动系统,错误就会消失并再次运行。
JNI代码是用C语言编写的,而不是用C ++编写的。
任何帮助将不胜感激!!!!
D/dalvikvm( 1514): No JNI_OnLoad found in /system/lib/libFlexCAN.so 0x41945b10, skipping init
W/dalvikvm( 1514): No implementation found for native Lcommunication/flexcan/core/Connection;.na_openPort:(I)I
E/Exception( 1514): java.lang.UnsatisfiedLinkError: Native method not found: communication.flexcan.core.Connection.na_openPort:(I)I
E/Exception( 1514): at communication.flexcan.core.Connection.na_openPort(Native Method)
E/Exception( 1514): at communication.flexcan.core.Connection.access$0(Connection.java:117)
E/Exception( 1514): at communication.flexcan.core.Connection$ReceiveThread.run(Connection.java:147)
答案 0 :(得分:0)
在使用库之前,您需要使用NDK构建库。构建之后,它将生成可以使用的.so文件。详情:https://developer.android.com/tools/sdk/ndk/index.html