Xamarin.Forms IOS断点没有命中
我最近升级到新的Visual Studio的Xamarin,从那以后,我不能在IOSdebugging期间打断点。 Android很好,奇怪。
我卸载并重新安装了Visual Studio Community Edition 2017,并保留了所有的默认值。 以前,这已经解决了这个问题。
我已经读了几十个类似的投诉,但这些解决scheme并没有为我工作。
另一种解决方法是禁用iOS项目(不是PCL项目)中的链接。 这对我有效。
- 转到iOS项目设置
- iOS构build
- 链接器行为:不要链接。
转到Visual Studio for Mac,解决scheme资源pipe理器,然后selectProject-> Option-> Compiler-> Debug信息,在下拉列表中select“Full”。
您需要在您要debugging的解决scheme中为这些项目中的每个项目设置“Full”,否则断点将无法启动。
在Xamarin.iOS
有一个bug,它将在Xamarin.iOS 10.12.0.12 (494fcbc)
中Xamarin.iOS 10.12.0.12 (494fcbc)
,它应该在testing版本中提供。 这个问题似乎只发生在PCL中,如果你在你的可移植项目(Xamarin.Forms代码)中设置了一个断点的话。
有一个临时的解决方法 ,这对我有用:
可能的临时解决方法:将便携式类库项目切换为输出“便携式”PDB文件而不是“完整”PDB文件
在文本编辑器中打开可移植类库.csproj文件。 例如,右键单击解决scheme资源pipe理器中的项目,然后select“卸载项目”,然后再次右键单击它并select“编辑…”。
在“Debug | AnyCPU”configuration的PropertyGroup下,将DebugType更改为:portable
保存更改并重新加载项目。
再次构build,部署并开始debuggingiOS应用程序项目。
如果您执行上述步骤,则Android上存在问题。 为了能够在Android上再次出现断点,你必须这样做:
长话短说,如果您手动删除已经切换到
portable
每个项目的“bin”和“obj”文件夹,请从testing设备上卸载应用程序,然后清理并重新构build解决scheme,portable
模式与Android一起工作。 一旦执行了一次这些清理步骤,理论上不需要再次执行它们,除非再次切换DebugType。
编辑
在Android上我仍然有麻烦 ,所以这不是一个完美的方式。