java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.tsingthu.i_business-RUx9FM_0xdCb7qW5MPdo-w==/base.apk"],nativeLibraryDirectories=[/data/app/com.tsingthu.i_business-RUx9FM_0xdCb7qW5MPdo-w==/lib/arm64, /data/app/com.tsingthu.i_business-RUx9FM_0xdCb7qW5MPdo-w==/base.apk!/lib/arm64-v8a, /system/lib64, /system/product/lib64, /hw_product/lib64, /system/product/lib64]]] couldn't find "libgxx_personality.so"
java.lang.NoSuchMethodError: No virtual method sendCodecInfoEvent()V in class Lcom/alivc/conan/event/AlivcEventReporter; or its super classes (declaration of 'com.alivc.conan.event.AlivcEventReporter' appears in /data/app/com.tsingthu.i_business-RUx9FM_0xdCb7qW5MPdo-w==/base.apk!classes8.dex)
ndk {
abiFilters "armeabi-v7a", "arm64-v8a"
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
从错误日志中可以看出,您遇到的问题主要涉及两个方面:UnsatisfiedLinkError 和 NoSuchMethodError。下面我将分别针对这两个问题提供可能的解决方案:
这个错误表明您的应用在运行时尝试加载一个本地库(.so文件),但系统未能找到名为libgxx_personality.so的库。这通常是因为该库没有被正确地打包到APK中,或者路径配置不正确。
解决方法:
确认本地库是否已包含:确保您的项目中确实包含了所有需要的.so文件,并且它们被放置在正确的目录下。对于Android Studio项目,这些文件应位于src/main/jniLibs/{abi}目录下,其中{abi}是目标CPU架构,如armeabi-v7a或arm64-v8a。根据您的ndk配置,您已经指定了armeabi-v7a和arm64-v8a,请检查这些目录下是否有遗漏的libgxx_personality.so。
检查Gradle配置:确保您的build.gradle文件正确配置了NDK路径和abi过滤器。您已经添加了abiFilters,看起来这部分配置是正确的。但是,请确认没有其他配置覆盖或忽略了这些设置。
清理并重建项目:有时候,即使配置正确,也需要执行Clean Project和Rebuild Project来确保所有更改都被应用。
检查依赖库:如果libgxx_personality.so属于某个第三方库,请确保该库的依赖也被正确添加到项目中,并且版本兼容。
这个错误意味着在运行时尝试调用com.alivc.conan.event.AlivcEventReporter.sendCodecInfoEvent()方法,但该方法在当前类或其父类中找不到。这通常是因为编译时和运行时使用的库版本不一致。
解决方法:
检查依赖版本:确认com.alivc.conan.event.AlivcEventReporter相关的库是否是最新的,并且与您的项目兼容。在build.gradle文件中查看相关依赖,并确保它与阿里云音视频SDK的文档推荐版本一致。
清除旧的缓存和依赖:有时老版本的库文件可能会因为缓存的原因而没有被更新。尝试删除项目的.gradle目录、build目录以及IDE的缓存,然后重新同步和构建项目。
确保依赖传递正确:如果AlivcEventReporter是从另一个依赖中间接引入的,检查是否有依赖冲突。可以使用./gradlew app:dependencies命令来查看整个依赖树,找出可能的冲突并解决。
联系技术支持:如果上述方法都无法解决问题,建议直接联系阿里云的技术支持,提供详细的错误信息和项目配置,以便获得更专业的帮助。
综上所述,这些问题通常涉及到项目配置、依赖管理和构建流程,通过仔细检查和调整这些方面,应该能够解决遇到的问题。