当我开始调试Xamarin Android应用程序时,为什么我不能达到断点?

时间:2015-06-04 10:17:50

标签: android debugging visual-studio-2013 xamarin

当我开始调试我的第一个Xamarin Android应用程序时,我设置了一些断点。无论我做什么,它仍然不会到达断点。这有什么问题?

我已多次尝试,但没有帮助。

3 个答案:

答案 0 :(得分:4)

我发现包含项目的名称可能会有所不同。 你的角色中是否有空格或标点符号?

文件夹名称通常与项目名称相同,但并非必须如此。我有一个名为" Engagement(Android)"的Xamarin Android项目。在解决方案中,默认情况下它存储在磁盘上... \ Engagement(Android)\ Engagement(Android).csproj

无论我做了什么,它都不会打破断点。我添加的全新项目(称为Test1,Test2等) - 完美调试。

当我将文件夹名称更改为" Engagement_Android" (保持相同的项目名称) - 它开始再次打破断点。

其他症状包括"清洁项目"选项不清除bin / debug文件夹中的所有文件(它留在项目的主DLL和PDB文件后面)。

为我设置它的事情是注意到当我进行干净的构建时,bin / debug文件夹不包含" MDB"主exe的文件(在本例中为Engagement Android.dll.mdb),因此未打包到APK文件中。

事实证明,MDB文件是将调试信息打包到APK中的方式 - 没有它你就无法调试!我认为它们是在构建过程中由名为PDB2MDB.exe的工具创建的。

如果您尝试这样做,请记住它是物理文件夹名称而不是重要的项目名称。此外,您需要编辑SLN文件,因为它包含对解决方案中每个项目的路径的引用 - 所以也在那里进行更改。

答案 1 :(得分:0)

之前我遇到过同样的问题,我已经设法为此找到了解决方法。我已经尝试手动清理我项目的所有bin \ Debug文件夹,这很有效。永远不要单独依赖干净的解决方案/项目,因为这不会删除输出文件夹中的所有文件。之后,重建您的项目。

答案 2 :(得分:-1)

此外,请尝试保存所有工作并关闭Xamarin Studio并重新启动它。

过去我遇到过一些问题,只有在我重新启动IDE时才会消失。