当我从Visual Studio调试我的Xamarin.iOS项目时,它会在模拟器上构建,安装,并毫无问题地启动应用程序。但是在启动时,我看到一堆Debug跟踪来自一种方法,这种方法在我的C#代码中甚至不再存在。我还可以在类中设置断点,我从该方法中删除了该方法所使用的相同行号,并且当调试器停止时,我将在调用堆栈中看到删除的方法。
我已关闭并重新打开Visual Studio,重置与Mac构建服务器的连接,清理并重建我的解决方案,并手动删除解决方案输出。在Mac上,我已关闭并重新打开模拟器,并尝试重置内容和设置,这确实清除了应用程序。但即便如此,情况仍然存在。我可以尝试在Mac上使用其他东西来确保旧代码的所有缓存副本都已删除吗?
答案 0 :(得分:7)
在项目文件夹中删除bin和obj文件夹。这对我有用,但仍然很烦人。
答案 1 :(得分:2)
在iOS模拟器中(在Mac上),单击主菜单中的“重置内容和设置”条目。
答案 2 :(得分:1)
这适用于我的Android项目遇到同样的问题:
然后它正常工作
答案 3 :(得分:1)
检查配置管理器(使用Debug,Release等下拉列表)并检查是否正在构建所有项目。它通常会因为某种未知原因而取消选中您正在使用的所有项目。
这意味着它不会重建所有项目,因此显示旧版本。
根据您对重建每个项目的评论,这是一个经典的标志,表明项目没有经过检查可以在运行时构建,以及为什么必须手动完成。
答案 4 :(得分:1)
我遇到了类似的问题(虽然在Android模拟器上)。
对我不起作用:
对我有用什么?
从模拟器中卸载应用程序,然后再次运行Debug 。 这是一个Android模拟器,所以我通过点击应用程序图标和holidng很长时间卸载,然后将其拖动到“卸载应用程序”。在iOS模拟器上它应该是类似的。
答案 5 :(得分:0)
在我的情况下,我必须启用所有架构:
答案 6 :(得分:0)
iOS模拟器仍然存在这个问题。我的解决方案:
我在更换模拟器设备时执行上述操作。