[英]Visual studio can't debug Android Xamarin app
我使用 Visual Studio 2013 开始使用 Xamarin 和 Android。
当我开始调试 android 应用程序时,它会构建、部署到设备,然后在 Visual Studio 中停止调试。 我不能打任何断点。 应用程序在设备中运行,但我无法调试它。 我错过了什么吗? 我已经尝试过各种模拟器和物理 android 设备,但调试在其中任何一个都不起作用。 它就像我已经阻止了它一样。
在 Xamarin Studio 中调试相同的解决方案有效,但我无法在 Visual Studio 中使用它。
我遇到了同样的问题,我在 Xamarin 的文档中找到了 Hyper-V 的解决方法: https : //developer.xamarin.com/guides/android/deployment,_testing,_and_metrics/debug-on-emulator/visual-studio-android -模拟器/
TL; 博士; 打开 Hyper-V 管理器 -> 转到模拟器上的设置 -> 转到处理器设置 -> 选择兼容性 -> 标记“迁移到具有不同处理器版本的物理计算机”复选框 -> 完成! (至少对我而言)VS 现在正在调试我的 Android 应用程序
Visual Studio 无法使用 Hyper-V 调试 Android Xamarin 应用程序的另一个原因是您没有在 android 项目中检查“部署”选项。
步骤: 1)进入“解决方案属性” 2)选择“配置属性” 3)在Android项目中勾选“部署”。
确保您在调试模式下运行(在目标上)。
然后,检查应用项目的属性并查看它是否使用 Xamarin 调试器而不是 VisualStudio 调试器。
在 Android 项目中勾选“部署”。
如果您没有任何活动标记为主要启动器活动,也会发生这种情况:
[Activity(
...
MainLauncher = true,
...)]
public class MainActivity ...
如果您正在从之前的项目中转移代码并且之前的项目正在使用启动活动而您的新项目还没有这样做,那么很容易犯的错误。
在我的情况下,经过一些调查,我看到我收到了这个警告: “无法使用调试符号读取 .android.dll”。没有它就重试加载它。错误详细信息记录在下面。2>Mono.Cecil.Cil。 SymbolsNotMatchingException:找到了符号但没有对程序集进行数学运算”
解决方案是禁用链接:
右键单击 Android 项目 -> 属性 -> Android 选项 -> 在“链接器属性”下,将链接设置为无(见下图)
从 TedFalasco 对这篇文章的回答中得到了这个。
无法在 Windows 7 上安装 Hyper-V 管理器(仅安装了管理工具),因此如果遇到此问题,按照这些步骤操作无济于事。
这是对我有用的东西,它在此处作为答案提及,但尚未标记或标记为答案。 这实际上是最好和最简单的解决方案。 没有其他东西对我有用。
在 Visual Studio 中,确保在解决方案资源管理器中选择解决方案文件(而不是项目文件)。 然后转到左侧窗格中的“项目 > [项目] 属性”,选择“配置属性 > 配置” 现在,如果可能,请检查 Deploy 功能。 只有可部署的项目才有这个选项。
这救了我的命,我几乎放弃了 Xamarin。 我真的希望这能帮助像我这样的人......
就我而言,警告是不言自明的:
在 Visual Studio 项目属性页中将调试信息设置为可移植,或在文本编辑器中编辑项目文件并将“DebugType”MSBuild 属性设置为“可移植”以使用更新的
换句话说:右键单击项目 => 属性 => 构建 => 单击高级=> 将调试信息设置为portable 。
我已经尝试了每一个答案,但都没有奏效。
这是我为使其再次工作所做的工作:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.