【发布时间】:2015-09-11 04:13:57
【问题描述】:
我刚开始使用 nativescript,所以请注意这只是一个简单的问题。
我在手机上使用tns run android 运行我的代码,但是当它启动时,它也会在控制台中启动 tons 的登录,所以我该如何调试我编写的代码让我说我有console.log我的代码中的语句,但我无法在 heaps 的日志中轻松找到我的语句。
【问题讨论】:
标签: nativescript
我刚开始使用 nativescript,所以请注意这只是一个简单的问题。
我在手机上使用tns run android 运行我的代码,但是当它启动时,它也会在控制台中启动 tons 的登录,所以我该如何调试我编写的代码让我说我有console.log我的代码中的语句,但我无法在 heaps 的日志中轻松找到我的语句。
【问题讨论】:
标签: nativescript
您可以使用可用于 JavaScript 虚拟机的调试器工具。您可以在 NativeScript 文档 - debugging 中找到有关它的更多信息。 基本上要使用调试器,您将需要 Chrome 浏览器。有几个选项可以运行它:
tns debug android --debug-brk,它会运行应用程序并打开调试器tns run android 或tns livesync android --watch 运行应用程序(下面有关于此命令的更多信息),您将无法在当前控制台窗口中编写任何其他命令。在这种情况下,您可以再打开一个控制台窗口并输入tns debug android --start
tns run android --justlaunch,之后您将能够在同一控制台窗口中键入tns debug android --start。如果您想将所有console.log() 语句打印在一个地方,您可以使用Android 设备监视器。要运行它,在控制台中写入monitor,它就会出现。在那里你可以为你的 console.log()-s 创建一个新的过滤器。在按下绿色加号图标后会出现的对话框中,在 by Log Tag 字段中,您必须编写 JS。然后在运行您的应用程序后,您可以按名称,您给该过滤器,您将看到来自您的应用程序的所有 console.log() 语句。
使用监视器更方便的是使用命令tns livesync android --watch。通过使用它,您将在保存所做的更改后自动运行您的应用程序。另请注意,有时监视器只是断开连接,您将不得不再次运行它。
【讨论】:
monitor 确实有帮助,但是当我再次停止运行tns run android 时,它不会再次赶上设备。此外,在我运行tns run android 我的tns debug android --start 剂量后,它只是挂了很长时间,然后最后它说无法检测调试端口。知道为什么吗?
tns debug android --get-port 始终返回 0,即使我已正确完成所有步骤。我有 chromium 作为我的浏览器,这可能是问题吗?
tns debug android --start --log trace 命令的输出是什么才清楚。此外,最好在github.com/NativeScript/nativescript-cli/issues 发布问题,以便团队有更好的可见性。