我正在 iOS 设备上调试用 Corona 制作的应用程序。我们已经通过在办公室周围的试飞来测试我们的应用程序,并为我们的测试人员提供了一些 xCode 教程,以便他们可以在发生错误时向我们提供设备日志。但现在,当他们向我们发送错误报告时,我们注意到堆栈跟踪中没有类名或行号——因此无法判断错误来自何处。它看起来像这样:
Feb 26 17:39:01 Daniels-iPad ABC096-apple[3106] <Warning>: ?:0: attempt to get length of upvalue '?' (a nil value)
stack traceback:
?: in function 'addBody'
?: in function 'createObstacle'
?: in function 'spawnOne'
?: in function 'spawn'
?: in function 'conditionalSpawn'
?: in function 'begin'
?: in function '?'
?: in function 'handleAdded'
?: in function 'add'
?: in function 'createObstacleSpawner'
?: in function <?:210>
(tail call): ?
?: in function '?'
?: in function <?:148>
?: in function 'listener'
?: in function 'dispatch'
?: in function 'tellViews'
?: in function '?'
?: in function <?:151>
不太有帮助!然而,我知道,在过去,当我直接从我的计算机将应用程序加载到我的设备上时,我看到了更有用的堆栈跟踪,而不是通过互联网,通过试飞。有没有什么方法可以分发应用程序并仍然获得良好的堆栈跟踪?当我在 Corona 中构建应用程序时,它是否与我的应用程序附带的 dSym 文件有关?帮助我,欧比万斯,你是我唯一的希望!该怎么办?
最佳答案
扩展lhf answer ,默认情况下,Corona 会删除发行版本中的调试信息,并将其保留在调试版本中。 [1]
所以,您可能想要创建/编辑 build.settings
文件并进行设置:
settings =
{
build =
{
neverStripDebugInfo = true
}
}
这将防止在任何类型的构建中剥离调试
信息。
测试人员如何准确地进行这些构建的额外信息也可能有所帮助。
[1] http://docs.coronalabs.com/guide/distribution/buildSettings/index.html#buildcontrol
关于ios - iOS 设备上的 Lua 堆栈只有 ?,没有类名或行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28744504/