【问题标题】:cant attach unity debugger to ios device无法将统一调试器附加到 ios 设备
【发布时间】:2016-12-12 06:44:03
【问题描述】:

所以我试图让我的应用程序在 iOS 设备上运行,连接到统一调试器,这样我就可以设置断点来帮助找出 iOS 特定的问题。这是我一直在经历和验证的一切。

  • 我已尝试在 MonoDevelop 和 Visual Studios 上执行统一附件。在这两个上,我都可以在附件列表中看到我的设备和应用程序。
  • 在 Visual Studios 中,我选择附加到我的设备,但没有任何反应。当我选择编辑器时它确实可以正常工作。
  • 在 Monodevelop 中,它只是吐出它无法连接到调试器。
  • 我已经确认它们在同一个网络上,检查了脚本调试,检查了编辑器附加。

不确定我在这里缺少什么以使其链接到设备。任何帮助表示赞赏。

更新

在关于切换到单声道构建的 cmets 之后。我现在遇到了另一个障碍。在 xcode 中我得到以下错误。

ld: Unable to insert branch island. No insertion point available. for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

【问题讨论】:

  • 什么统一版本?
  • 您是否记得选择“开发构建”(在构建选项中,靠近您单击构建的位置)。这是一个令人讨厌的问题!
  • @Rob Unity 版本 5.3.5p5
  • @Rob 现在将其设置为 IL2CPP,让我将其设置为单声道并尝试一下。
  • 请注意,您不能使用 Mono 作为脚本后端发布。您必须使用 IL2CPP,因此请确保在发布前在 IL2CPP 上进行正确测试。更多信息:docs.unity3d.com/Manual/iphone-64bit.html

标签: ios xcode visual-studio debugging unity3d


【解决方案1】:

我将在这里做一个小假设,即您正在使用脚本后端 IL2CPP(检查 iOS 播放器设置)

使用 IL2CPP 编译时不能使用脚本调试。 您可以在播放器设置中更改为单声道。这将允许您使用脚本调试。

注意:您不能使用 Mono 发布到 iOS,您必须使用 IL2CPP,因此请确保您使用 IL2CPP 彻底测试您的应用

更多信息可以在这里找到Unity 64Bit iPhone notes

【讨论】:

  • 我的设备在 iOS 11 上,不支持 32 位应用程序,需要 IL2CPP 以 64 位编译。这是否意味着在 iOS 上调试脚本已经结束?
  • 当我最初在 2016 年回答时,是的,不支持 IL2CPP 的调试,但是我想这在去年发生了变化,但是我不知道这个抱歉的当前状态。
【解决方案2】:

在设备上调试由 IL2CPP 创建的生成的 C++ 代码也可能是有益的。你可以用 Xcode 做到这一点。请参阅此博客文章中的示例:http://blogs.unity3d.com/2015/05/20/il2cpp-internals-debugging-tips-for-generated-code/

这通常比使用 Mono 脚本后端调试托管代码更容易,因为 Unity 中使用 Mono 的 iOS 调试器可能有点不稳定。

【讨论】:

  • 呃,片状太烦人了。
猜你喜欢
  • 2018-09-05
  • 2011-05-17
  • 2015-03-17
  • 1970-01-01
  • 1970-01-01
  • 2020-04-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多