我有一个非常奇怪的问题,我之前在Unity中没有遇到过 - 我无法接听Debug.Log()
来自Unity和XCode的NSLog()
来电显示我将应用程序构建到设备时控制台。
这是我到目前为止所尝试的内容:
我从我的应用程序获得的唯一输出是Unity在Xcode项目中生成的main.mm文件中的这一行:
NSLog(@"-> registered mono modules %p\n", &constsection);
我没有看到默认情况下项目中的其他默认日志和打印件,例如UnityAppController.mm
中的以下行:
printf_console("-> applicationDidFinishLaunching()\n");
奇怪的是,我在项目的早期就已经看到了所有这些日志和我自己的日志,但现在我不再这样做了。我已经尝试退回并恢复到早期版本,但我仍然没有看到任何日志。我也尝试构建一个新的XCode项目并将其构建到我的设备上,但也没有运气。
我可能会遗漏哪些东西?我已经查看了尽可能多的其他主题并尝试了几个建议,但到目前为止还没有找到任何建议。有没有理由我会从Unity收到关于注册单声道模块的第一个调试日志而不是其他模块?我找不到一个很好的理由,它使我在设备上的调试成为一种没有它们的生活痛苦。
供参考,我使用的是Unity 4.5.1和XCode 5.1.1。
由于
答案 0 :(得分:0)
您是否尝试附加到Unity logmessage事件?
public Text logText; // someRandomUnityUITextThatIsShownOnScreen
void Start(){
Application.logMessageReceived += HandleLog; //can disable logging with Application.logMessageReceived -= HandleLog;
}
void HandleLog(string logString, string stackTrace, LogType type)
{
logText.text += "\n | " + logString;
//of course you can use the logstring and stacktrace to do whatever you want, write into a debug txt file or smth.
}
如果该方法也不起作用,则可能是当前的iOS错误