Visual Studio 2019 16.9.3构建Xamarin.Forms安卓应用卡滞问题求助
Visual Studio 2019 16.9.3版本Xamarin.Android构建卡死排查方案
故障现象
构建流程无任何错误提示,输出永久停留在以下内容后无后续日志,无法进入设备部署环节:
Build started...
1>------ Build started: Project: App8, Configuration: Debug Any CPU ------
1>App8 -> C:\Users\moham\source\repos\App8\App8\App8\bin\Debug\netstandard2.0\App8.dll
2>------ Build started: Project: App8.Android, Configuration: Debug Any CPU ------
已知触发特征:
- 对所有新建/现有Xamarin.Forms项目生效,不存在单项目配置异常
- 问题在Visual Studio更新至16.9版本后开始出现
- 已完成的常规排查操作(重启IDE、重装IDE、删除bin/obj文件夹、调整工具选项内置配置)均无法解决问题
解决步骤
- 临时关闭链接器功能,解决构建进程静默阻塞
右键Xamarin.Android项目打开「属性」面板,进入「Android选项」分类,找到「链接」配置项,将默认Debug配置下的「链接所有程序集」调整为「不链接」,保存配置后重新触发构建。该配置仅适用于日常Debug调试场景,正式打包发布前需恢复原有链接配置 - 清理旧版Xamarin.Android构建缓存
完全关闭所有Visual Studio进程后,删除以下路径下的全部缓存内容:%LOCALAPPDATA%\Xamarin\Mono for Android- VS安装目录下
MSBuild\Xamarin\Android路径内的旧.targets缓存文件(操作前建议先备份文件)
重启VS后重新加载解决方案执行构建
- 修复损坏的Xamarin.Android SDK组件
16.9.3版本自带的11.2.0版本Xamarin.Android SDK存在已知的构建进程无响应问题,可通过Visual Studio Installer完成组件修复:启动VS Installer,选择当前安装的VS实例点击「修改」,切换到「单个组件」标签页,搜索「Xamarin.Android SDK」,先取消勾选该组件执行一次卸载,完成后重新勾选该组件再次执行安装替换。 - 降低构建并行度,避免进程锁冲突
进入VS「工具」-「选项」-「项目和解决方案」-「生成和运行」配置页,将「最大并行项目生成数」调整为1,保存配置后重启VS再执行构建。 - 排除安全软件的进程拦截
16.9版本构建Xamarin.Android时会调用aapt2.exe、r8.jar等本地进程,部分安全软件会静默拦截上述进程启动,导致构建无日志卡死。可将VS安装目录、项目存储路径、%LOCALAPPDATA%\Android路径全部加入安全软件的信任白名单,关闭对应路径的实时扫描权限后重试构建。 - 回退至上一稳定版本规避已知问题
上述操作均无效时,可通过VS Installer选择对应实例的「更多」菜单,选择「回退到上一个稳定版本(16.8.6)」,该版本不存在16.9系列存在的Xamarin.Android构建阻塞问题。
内容的提问来源于stack exchange,提问作者Mohamed hanafy
相关产品推荐
相关产品推荐

