2 u011017670 u011017670 于 2017.09.04 21:42 提问

android jni java.lang.UnsatisfiedLinkError 5C

在调用jni时,报java.lang.UnsatisfiedLinkError: No implementation found for void com.eaglive.voip.VoipSdk.init(java.lang.String, int, java.lang.String) (tried Java_com_eaglive_voip_VoipSdk_init and Java_com_eaglive_voip_VoipSdk_init__Ljava_lang_String_2ILjava_lang_String_2)

还有调用了其他的so文件,但是这里出现的错误好像与它们无关,就暂时不贴出来了,
网上说的检查java类包名和jni方法名这个我检查了,没问题,还有使用命令查看了so文件是否加载到目录里,结果如下:
图片说明

System.loadLibrary("voip");
这句也没报异常。跪求大牛帮我看看,还是哪里的问题。拜托,拜托……

3个回答

caozhy
caozhy   Ds   Rxr 2017.09.05 08:50
u011315960
u011315960   2017.09.05 10:58

java.lang.UnsatisfiedLinkError: No implementation found for void com.eaglive.voip.VoipSdk.init(java.lang.String, int, java.lang.String) (tried Java_com_eaglive_voip_VoipSdk_init and Java_com_eaglive_voip_VoipSdk_init__Ljava_lang_String_2ILjava_lang_String_2)

从log上,是因为你使用jni之前,需要调用VoipSdk.init()方法来初始化jni的相关配置,而你并没有这么做,所以被jni手动抛出了这个异常,再仔细的查看一下使用文档把,看看要怎么修改。

my1059176435
my1059176435   2017.09.05 11:45

有可能是你修改了java文件的包名导致.so文件找不到方法,没有实现

Csdn user default icon
上传中...
上传图片
插入图片