当我开始调试我的第一个Xamarin
Android应用程序时,我设置了一些断点。无论我做什么,它仍然不会到达断点。这有什么问题?
我已多次尝试,但没有帮助。
答案 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时才会消失。