MAUI项目构建/运行报错:无法加载libSkiaSharp库求助
解决MAUI中“Unable to load library 'libSkiaSharp'”报错的方案
清理还原NuGet包
- 右键项目→「管理NuGet程序包」,确认SkiaSharp相关包(SkiaSharp、SkiaSharp.Views.Maui等)版本和项目目标框架匹配,优先用MAUI模板默认版本。
- 删除项目目录下的
bin和obj文件夹,打开「工具→NuGet包管理器→包管理器控制台」,执行:dotnet clean dotnet restore
补全对应平台的SkiaSharp运行时包
针对你要运行的平台,手动安装对应的原生资产包:- 安卓:
SkiaSharp.NativeAssets.Android - iOS/MacCatalyst:
SkiaSharp.NativeAssets.iOS - Windows:
SkiaSharp.NativeAssets.Win32
这些包通常随MAUI模板自动引用,但缺失时需手动添加。
- 安卓:
更新Visual Studio和MAUI工作负载
打开Visual Studio安装器,检查并安装所有可用更新,确保MAUI相关工作负载(.NET MAUI、Android SDK、iOS开发工具等)是最新状态——旧工具链常导致本地库加载异常。修复模拟器/设备环境
- 安卓模拟器:新建一个API 33+的模拟器实例,确保启动正常后再运行项目。
- Windows平台:检查项目目标Windows版本和系统兼容,尝试重启Visual Studio或清理Windows应用缓存。
手动复制本地库到输出目录
若以上方法无效,手动复制对应平台的SkiaSharp库:- 找到NuGet包安装路径,比如安卓arm64的库路径:
%USERPROFILE%\.nuget\packages\skiasharp.nativeassets.android\[版本号]\runtimes\android-arm64\native\libSkiaSharp.so(根据平台和版本调整) - 将
libSkiaSharp.so(安卓)或SkiaSharp.dll(Windows)复制到项目输出目录(如bin\Debug\net8.0-android)
- 找到NuGet包安装路径,比如安卓arm64的库路径:
内容的提问来源于stack exchange,提问作者MUHAMMED DÖNMEZ
相关产品推荐
相关产品推荐

