.NET MAUI Android项目使用OpenCVSharp4遇DLL未找到异常
解决.NET MAUI Android端OpenCvSharp
OpenCvSharpExtern 找不到的问题 问题根源
你当前安装的OpenCvSharp4.runtime.win和OpenCvSharp4.Windows是Windows专属的依赖包,仅包含Windows平台所需的原生库。Android平台没有对应的库文件,因此运行时会抛出System.DllNotFoundException: 'OpenCvSharpExtern'异常。
解决方案
移除Windows专属包
在NuGet包管理器中卸载OpenCvSharp4.runtime.win和OpenCvSharp4.Windows,这两个包对Android环境无任何作用,反而会增加不必要的依赖。安装Android平台对应的运行时包
安装与OpenCvSharp4主包版本一致的OpenCvSharp4.runtime.android(即v4.8.0.20230708)。该包包含了Android平台所需的libOpenCvSharpExtern.so原生库,能解决动态链接库找不到的问题。验证库文件是否正确部署
- 检查Android项目的输出目录,确认
lib文件夹下的对应架构目录(如arm64-v8a、armeabi-v7a)中存在libOpenCvSharpExtern.so文件; - 确保
AndroidManifest.xml中没有添加限制库加载的配置项。
- 检查Android项目的输出目录,确认
代码初始化适配(可选)
部分场景下,需要在使用OpenCvSharp前显式初始化,可在Android端的视频捕获逻辑开始前添加:Cv2.Init();
注意事项
- 所有OpenCvSharp相关包的版本必须严格统一,版本不匹配会导致库加载失败;
- 测试时选择与库架构匹配的Android模拟器或真机,避免因架构不兼容引发的加载问题。
内容的提问来源于stack exchange,提问作者jalal uddin
相关产品推荐
相关产品推荐

