【问题标题】:How to debug MonoTouch app on simulator?如何在模拟器上调试 MonoTouch 应用程序?
【发布时间】:2011-04-19 01:10:13
【问题描述】:

我正在测试 MonoTouch(用 C# 而不是 Objective-C 开发的想法听起来很棒)。我编写了一个非常简单的应用程序,它编译良好,并且在模拟器上运行良好。

但是每当我添加断点并点击调试时,我都会得到:

System.Net.Sockets.SocketException: Address already in use
  at System.Net.Sockets.Socket.Bind (System.Net.EndPoint local_end) [0x00000] in <filename unknown>:0 
  at Mono.Debugger.Soft.VirtualMachineManager.BeginListen (System.Net.IPEndPoint dbg_ep, System.Net.IPEndPoint con_ep, System.AsyncCallback callback) [0x00000] in <filename unknown>:0 
  at MonoDevelop.Debugger.Soft.RemoteSoftDebuggerSession.StartListening (MonoDevelop.Debugger.Soft.RemoteDebuggerStartInfo dsi) [0x00000] in <filename unknown>:0 
  at MonoDevelop.Debugger.Soft.IPhone.IPhoneDebuggerSession.OnRun (Mono.Debugging.Client.DebuggerStartInfo startInfo) [0x00000] in <filename unknown>:0 
  at Mono.Debugging.Client.DebuggerSession+<Run>c__AnonStorey6.<>m__2 () [0x00000] in <filename unknown>:0 

我已经尝试阅读文档和常见问题解答、更改目标以及我可以搜索到的几乎所有其他解决方案(大多数都不相关 - 似乎这个错误主要在您开发 ASP.Net Mono 项目时出现)。我真的希望有一个简单的“转动开关”解决方案。

为了记录,我正在使用:

  1. MonoDevelop 2.4.2
  2. MonoFramework-2.10.1_3
  3. MonoTouch 4 试用版(会阻碍调试吗?)
  4. Mac O X 10.6.7
  5. 添加的库:System.Net、System.Text、System.IO 和对 System.Json 的引用

一如既往,感谢您的宝贵时间,

男人

【问题讨论】:

    标签: debugging mono xamarin.ios monodevelop


    【解决方案1】:

    听起来其他进程正在使用与软调试器尝试使用的端口相同的端口。

    在终端试试这个命令:

    sudo lsof -i -P | grep -i "listen"
    

    它应该可以帮助您找出导致问题的过程。希望它是您可以关闭/杀死或从您的 Mac 中删除的东西。

    【讨论】:

    • 谢谢乔纳森!让我走上正轨。显然调试器正在使用端口 10000(需要找出如何更改它),它被我机器上的另一个应用程序使用。我设法启动了调试器,但它在一分钟内退出。会做更多的研究,虽然我不确定是什么阻止了它 - 这回答了主要问题。
    • 其实我发现我不能使用断点来调试应用程序的启动过程(这里解释:monotouch.net/Documentation/Debugging)所以解决方案100%被接受。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-08
    • 2017-07-20
    • 2012-12-11
    • 2012-02-09
    • 1970-01-01
    • 2011-03-26
    相关资源
    最近更新 更多