集成环信导入.jar和so文件的坑

android集成环信的开发文档:http://docs.easemob.com/im/200androidclientintegration/10androidsdkimport,按照方法集成,下载了SDK解压,


按照文档的操作要求导入到项目libs目录下:


然后在清单文件 AndroidManifest.xml 里加入以下权限,以及写上你注册的 AppKey。并在 application 的oncreate方法中做初始化,这些环信文档中都有。

运行程序;

报错:

  java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.glorystudent.testh5-1/base.apk"],nativeLibraryDirectories=[/data/app/com.glorystudent.testh5-1/lib/arm64, /system/lib64, /vendor/lib64]]] couldn't find "libhyphenate.so"
意思是不能找到 libhyphenate.so文件,按照官方文档操作竟然出这样的问题,搞不懂;

最后的解决办法是:

在src/mian目录下,新建libs文件夹:把环信3个so文件复制到这个文件夹中:


同时在清单文件 AndroidManifest.xml ,android{  }里加入:

 sourceSets {
        main {
            jniLibs.srcDirs = ['src/main/libs']
            jni.srcDirs = []
        }
    }
然后运行,就ok了

按照文档配置好登录成功回调:


注意:在以上过程中可能会出现异常:

java.lang.UnsatisfiedLinkError: dlopen failed: file offset for the library "******/lib/arm64/libhyphenate.so" >= file size: 0 >= 0

这个你要检查一下,导入的jar和so是否一致,建议重新导入一次,之前也犯过这样的错误,后面重新导入就ok了。

记录这些希望对大家集成环信有写帮助

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值