gpt4 book ai didi

visual-studio - Xamarin Android 调试 : No compatible code running

转载 作者:行者123 更新时间:2023-12-04 16:28:35 26 4
gpt4 key购买 nike

语境

我正在使用 VS 2017.3 开发 Xamarin.Forms 应用程序。我正在尝试诊断我的代码中发生异常的位置和原因。

我可以使用 SDK Android Emulator (HAX x86) 成功部署运行和调试我的应用程序。

但是,如果发生异常,我将看不到有关异常的任何信息,请参阅附加图片、设置。

问题

这在Android调试中是正常的,还是遗漏了什么?

enter image description here

...和我的build设置:

enter image description here

最佳答案

我想扩展@Uraitz 的答案,因为它帮助我解决了问题。

首先,正如他所解释的,您需要在您的事件中添加一个事件处理程序,如以下代码所示:

    protected override void OnCreate(Bundle savedInstanceState)
{
...
//subscribe to unhandled event
AppDomain.CurrentDomain.UnhandledException += CurrentDomainUnhandledException;
...
}

private void CurrentDomainUnhandledException(object sender, UnhandledExceptionEventArgs e)
{
System.Diagnostics.Debug.WriteLine(e.ToString());
}

在我的例子中,我在 CurrentDomainUnhandledException 里面放了一个断点所以我可以检查异常。

然而,即使在那里有那个断点,我运行我的代码仍然得到一个令人困惑的无调用堆栈错误。

enter image description here

在这一点上,我认为解决方案不起作用。事实上是这样,但在我的应用程序到达断点之前,我必须多次单击播放(继续)按钮:

enter image description here

单击该按钮后 两次 ,终于到了断点:

enter image description here

如果您想在调试器中获取调用堆栈,则必须在它可用之前深入研究几个级别,但您可以通过查看事件 args 参数来实现。

enter image description here

这个故事的寓意是——如果你已经添加了事件处理程序,但你仍然没有到达断点(或看到输出)——继续点击继续按钮!

关于visual-studio - Xamarin Android 调试 : No compatible code running,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46344434/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com