程序不定时出现:#222 java.lang.UnsatisfiedLinkError怎么办?

  • 回答 (3)
  • 关注 (0)
  • 查看 (584)

程序不定时出现:#222 java.lang.UnsatisfiedLinkErro

No implementation found for void com.tencent.imcore.internalSnsExtJNI.swig_module_init() (tried Java_com_tencent_imcore_internalSnsExtJNI_swig_1module_1init and Java_com_tencent_imcore_internalSnsExt

IM 整个就挂掉了,尤其是几分钟不用再从后台调出更容易触发这个,现在我们非常着急也是一头雾水,不知道哪个文件没有加载,所有依赖包都是从demo原封不动移植过来的。求帮助,期待尽快回复,谢谢~~

宮園薰宮園薰提问于
DSoon

腾讯 · 移动端开发工程师 (已认证)

乌拉拉~修改于

升级IM3.3后也遇到这个问题,楼主解决了么?

————————————————————

已解决:

通信团队加载so包的时间点是在IM调用init的时候,而不是一般的类的static方法去load的,所以在调用IM相关Native方法时一定要保证之前调用了init,否则会报上述异常。

修改建议是监听IM的登录事件,登录成功后再使用IM相关Native方法(包括new IM对象之类的)。

好好看解密右转天后不带记忆与方向生活回答于

您好,确保System.loadLibrary()函数一定被执行了加载了库。 对应函数函数名是否正确; 对应参数是否正确;

您参考下该文档:<div>http://sxb.qcloud.com/docs/SOP/AndroidStudio%E7%BC%96%E8%AF%91SDK%E6%8A%A5%E9%94%99.html使用真机调试测试看下

用户2982144回答于

这个问题应该时app在后台被系统清理了内存导致im初始化的so失效了,然后你再恢复过来的时候初始化的im so文件已经没了,所以看看是不是初始化IM的位置是不是没放对,放到Application里试试看

扫码关注云+社区

领取腾讯云代金券