此问题与 Visual Studio 2022 有关,已安装所有更新。
在 Android 模拟器中启动任何 MAUI 项目的任何应用程序都会挂在
[monodroid-debug] Trying to initialize the debugger with options: --debugger-agent=transport=dt_socket,loglevel=0,address=10.0.2.2:64294,embedding=1,timeout=1724325932
项目有没有断点都没有区别。
应用程序的启动无限期地卡在蓝色启动屏幕上,中间有白色 .NET 文本,或者有时卡在蓝色屏幕上,其中没有任何文本。
此外,如果我点击“停止调试”按钮,光标会变成忙状态,然后此错误消息会出现在模式窗口中:
调试器无法终止一个或多个进程:
[N/A] Mono:调试器仍附加到进程,或者进程当前未执行选择用于调试的代码类型。
调试器现在可能不稳定。建议大家全部保存 您的文件并退出。”
如果我关闭模式消息,光标将返回忙碌状态一段时间,然后 Visual Studio 停止尝试启动应用程序,并且应用程序仍停留在模拟器中的同一屏幕上。
唯一的出路是关闭Android模拟器。
无需调试即可部署项目,效果很好。
编辑:
我尝试重新安装VS,但没有效果。
部分起作用的是:
我不能 100% 确定是否需要这两个步骤,因为我无法确定是否在步骤 1 之后尝试部署项目。
无论如何,要么只有步骤 1,要么两个步骤都可以暂时解决调试问题。
我说暂时是因为即使一开始应用程序启动了调试器并没有在某些断点处停止执行,并且经过几次尝试后,应用程序启动挂在“[monodroid-debug]尝试使用以下命令初始化调试器”时出现了相同的问题选项”。
我必须补充的是,当我禁用移动数据和 Wi-Fi 时,调试器的问题似乎开始出现,因为我正在尝试测试与处理互联网连接异常相关的代码。
我重现了你的问题。我在Android模拟器上关闭wifi和移动数据后,启动项目时卡在蓝色启动屏幕上。
我发现这是 MAUI Github 上的一个错误(在关闭 WiFi 和移动数据的情况下启动调试器会崩溃)。尽管已经关闭,但问题仍然没有解决。您可以在 github 上重新发布此问题。
作为解决方法,您可以尝试使用 .NET CLI(命令行界面) 来运行项目。这样虽然不能通过断点调试程序,但至少可以使项目正常运行。 具体步骤:
dotnet workload install maui
dotnet build ./source./repos./MauiApp14 -t:run -f net8.0-android