我很幸运地将调试日志信息写入 Firebase ( http://www.firebase.com/ )。一些类似的解决方案(使用基于 JavaScript 的库从 Xbox 向某些远程机器发送文本调试信息)应该可以工作 - 我使用 Firebase,因为它相对简单而且我熟悉它。
这显然是一种奇怪的 Firebase 使用方式,也是一个非常蹩脚的调试过程。我编写调试日志代码,将我的项目的新版本上传到公共服务器,在 Xbox 上重新加载,使用 Firebase 数据调试器观察输出,进行更改,然后重复。
有时,我所做的更改以一种停止执行代码的方式破坏了页面,并且我没有得到任何调试数据,所以我必须小心地退后一步,弄清楚我做了什么。有时在我犯了错误之后,似乎有必要在 Xbox 上退出并重新加载 IE 以强制加载新页面。
但它的工作时间足够有用,除了猜测错误是什么之外,我还没有找到更好的解决方案。
一般来说,Xbox 360 上的 IE 应该表现得像 IE 9,并且您应该能够使用 IE 9 来测试发往 Xbox 的内容。但显然存在差异。以下是我学到的一些东西,其中一些是通过反复试验:
不支持:
- console.log() (调用它会杀死你的脚本执行)
- 迅速的()
- 插件、flash、ActiveX 控件等。
支持的:
- JavaScript
- 一些 HTML5,包括 Canvas .. 但不是本地存储?
它可以帮助调试检查 navigator.userAgent 字符串,该字符串将包含子字符串“Xbox”。我最后一次检查时,我看到“5.0(兼容;MSIE 9.0;Windows NT 6.1;Trident/5.0;Xbox)”。
谁告诉你 Xbox 上的 IE 不支持 JavaScript,你会感到困惑。它工作正常。
我很想听听一些更好的调试技术。