我的断点在Xamarin Studio中没有被击中。我不确定这是否与我的代码有关,但我觉得它不是因为我已经在我的项目中一遍又一遍地尝试断点(在我知道他们应该肯定是的地方)命中,并且在代码完美运行并且与我正在测试的功能完全无关的地方,并且当我调试时它们都没有得到确认。我没有禁用断点,我没有将它们添加到错误的位置。断点应该正常工作,而不是。我还要补充一点,我不允许在调试过程中暂停我的应用程序。我想你可以说我的Xamarin Studio中的调试器不工作,我不明白为什么。我相信我已经确定它与代码无关,但我仍然无法确定。请帮忙。谢谢。
答案 0 :(得分:18)
这是最受欢迎的问题:"断点不会受到xamarin打击"在谷歌,所以经过一整天的试验和错误,我将在这里发布一个解决这个问题的xamarin版本> 4.0.0.xxx。是的,遗憾的是这很简单。
<强>解强> (此解决方案适用于Visual Studio中的Android应用程序,但也适用于xamarin工作室)
从&#34; Debug&#34;的路径中删除所有符号。文件夹(通常:[.sln文件的路径] \ [您的解决方案名称] \ bin \ Debug):
所以,如果你有例子:
G:\My Files\Programming\C# (+ JS)\Test1\Examples\LINQ to Objects\AndroidDemo\AndroidDemo\bin\Debug
将其更改为:
G:\My Files\Programming\CSharp\Test1\Examples\LINQ to Objects\AndroidDemo\AndroidDemo\bin\Debug
对我来说&#34;(&#34;和&#34;)&#34;符号造成了麻烦(无论如何,谁在路径中使用这些符号?)
要验证这是否有效,请打开调试文件夹,在VIsual Studio Select&#34; Clean Solution&#34;,&#34; Recompile Solution&#34;,&#34; Deploy&#34;。
&#34;部署&#34; action应该生成包含调试数据的* .mdb文件。如果他们在场,你现在应该能够在断点处停下来。
现在,只要您需要调试某些内容,就可以像往常一样点击F5。
答案 1 :(得分:9)
我不确定是否有人仍在关注此主题,但此解决方法对我有用。 问题有时与单声道5有关。
所以分辨率是使用较旧版本的mono:
设置&#34;项目&gt; Active Runtime&#34; to&#34; Mono 4.8.0(8f6d0f6)(/ Library / Frame / Mono.framework / Version / 4.8.0)&#34;。
对于Mac用户,请在&#34;偏好设置&#34;中进行更改。 - &GT; &#34; .NET Runtimes&#34;
然后重建Android应用程序项目。
答案 2 :(得分:3)
删除BIN文件夹和任何* .SUO文件是此问题的最佳解决方法。
也可以尝试删除任何* .csproj.user
在最坏的情况下,通过使用&#34; Devenv.exe / ResetSettings&#34;
启动(运行)来重置VS设置答案 3 :(得分:1)
有时,解决方案的构建配置会变得复杂,在构建复杂的构建配置时很容易遗漏。确保一切都在那里正确设置。
答案 4 :(得分:1)
昨天我使用VS 2013和Xamarin插件遇到了这个问题。尽管Android项目中的断点仍然存在,但PCL项目中的“突然”断点并未激活。几周以来,一切都运作良好,我没有应用任何更新。看看VS Debug | Windows |模块视图,我可以看到没有为PCL程序集加载符号,我尝试的任何内容都不会强制它们加载,即使它们存在于运行程序集的文件夹中。
然后我记得我前一天做的最后一件事与代码无关,但是对csproj文件进行了一些重构以支持参数化的Jenkins构建。我在第一个“共享”PropertyGroup中放置了一个OutputPath定义,并将其从所有Configuration / Platform特定的PropertyGroup中删除,例如:
<OutputPath>bin\$(Configuration)\</OutputPath>
我删除了这个“常见的”OutputPath并将其放回每个特定的PropertyGroup中(冒犯我的DRY感觉,请注意),事情又开始了。
这可能不会咬很多人,但是浪费了我几个小时的时间,所以希望它可以饶恕别人。 Xamarin构建可能会对其部分MSBuild / xbuild进行一次强烈的期望,所以如果您为构建过程修改了csproj文件,这可能是一个可能的罪魁祸首。
答案 5 :(得分:0)
我从稳定转换为alpha频道v.3.11.785(Alpha)。所有断点现在都被击中了。
答案 6 :(得分:0)
我添加了这个答案,因为这是唯一适用于我的答案,Project Properties > Build
我错误地检查了Optimize Code
。
取消选中此框可以解决问题。
答案 7 :(得分:0)
我在使用Visual Studio for Mac的Xamarin Forms应用程序中遇到了此问题。就我而言,这是由于调试器而发生的。在iOS模拟器中运行时,Visual Studio不断显示“正在等待调试器连接到iOS模拟器...”。我确实重置了模拟器(硬件 => 擦除 全部 内容 和 设置)并清理解决方案。然后,我可以使用断点进行调试。希望这对某人有帮助。
答案 8 :(得分:-1)
我遇到了同样的问题。
原因(IMO):
在我的情况下,问题是由Xamarin Studio(但与VS2013相同)构建/重建过程引起的。
更详细地说,* .mdb文件未正确重新生成,因此调试器无法正常工作。 您可以通过清理解决方案并转到bin / debug文件夹来检查:如果您仍然看到* .mdf文件,那么这也是您的问题!
<强>解强>
唯一可行的解决方案是手动删除解决方案中所有项目的bin / debug中的所有* .mdb文件(所以Android项目和所有PCL项目),然后进行重建。
请告诉我这是否有帮助!
答案 9 :(得分:-1)
对我来说&#34;(&#34;和&#34;)&#34;符号也造成了麻烦,我正在寻找这个问题的几个星期。删除&#34;(&#34;和&#34;)&#34;在完整路径中,再次点击干净的构建和de断点。
答案 10 :(得分:-1)
就我而言,xamarin没有击中任何断点。显示红色圆圈而不是填充红色圆圈,因为xamarin无法指出一些语法错误,因为我认为解决方案构建不是最新,即使我能够运行该应用程序令人惊讶。所以我清理了和构建解决方案,并在此之后指出了错误和相关警告。我修复了这些,然后运行了项目。之后我能够成功调试!
答案 11 :(得分:-1)
如果项目在设备上启动,则VS恢复到标准编辑模式(菜单中未启用调试选项),即未附加调试器;检查项目属性&gt; Android选项&gt; 启用开发者工具 已选中。对我来说,设置被禁用(很可能在发布后检入源代码管理中)。
答案 12 :(得分:-1)
使用&#34; Visual Studio for Mac&#34; (暂时预览,但有效)而不是&#34; Xamarin Studio&#34;。这解决了我的问题。即使在我的PCL项目中,断点也在起作用!另一件事......我不得不改变&#34; project.json&#34; (JSON格式)到&#34; packages.config&#34; (XML格式)从&#34; Xamarin Studio&#34;更换时到&#34; Visual Studio for Mac&#34;。