Visual Studio Code在NativeScript app

时间:2017-02-23 05:24:03

标签: javascript android debugging visual-studio-code nativescript

我想使用nativescript创建一个小型的Android应用程序,但是没有调试器这样做会使事情变得比它们要慢得多。 因为它只是一个JS应用程序,所以我决定尝试一下Visual Studio Code,它至少在他们的教程视频中看起来与NativeScript应用程序相当不错,但是当我尝试使用它时,它并没有&#39 ; t似乎停在任何断点处。这是我的VSC启动配置:

    {
        "name": "Launch on Android",
        "type": "nativescript",
        "request": "launch",
        "platform": "android",
        "appRoot": "${workspaceRoot}",
        "sourceMaps": true,
        "watch": true,
        "tnsArgs": "--emulator"
    }

我注意到如果我将"stopOnEntry": true添加到此配置中,应用程序实际上会在应用时停止,但看起来VSC的调试器并未真正附加到该进程,因为播放按钮保持禁用状态。

这是我的package.json

{
  "description": "NativeScript Application",
  "license": "SEE LICENSE IN <your-license-filename>",
  "readme": "NativeScript Application",
  "repository": "<fill-your-repository-here>",
  "scripts": {
    "recreate": "rm -rf platforms && rm -rf node_modules && npm install && tns platform add android"
  },
  "nativescript": {
    "id": "org.nativescript.forni",
    "tns-android": {
      "version": "2.5.1"
    }
  },
  "dependencies": {
    "lodash": "^4.17.4",
    "nativescript-oauth": "^1.2.1",
    "nativescript-telerik-ui": "^1.5.1",
    "tns-core-modules": "2.4.4"
  },
  "devDependencies": {
    "babel-traverse": "6.21.0",
    "babel-types": "6.21.0",
    "babylon": "6.15.0",
    "lazy": "1.0.11"
  }
}

这是我的app.js,这是我希望打破的地方:

const application = require("application");
application.start({ moduleName: "views/login/login" });

我正在使用Windows 10.我也试过直接在我的三星Galaxy S7上运行应用程序,但它的工作方式完全相同。

1 个答案:

答案 0 :(得分:0)

在Win10机器上,我遇到了类似的问题。 看来,调试器已连接到很晚了。 您可以添加一个触发功能的按钮进行检查,并在该功能内设置一个断点。按下按钮后应该可以使用。

要解决此问题,请尝试在launch.json文件内的tnsArgs中添加-debug-brk 选项:

 {
      "name": "Launch on Android",
      "type": "nativescript",
      "request": "launch",
      "platform": "android",
      "appRoot": "${workspaceRoot}",
      "sourceMaps": true,
      "watch": true,
      "stopOnEntry": false,
      "tnsArgs": ["--debug-brk"]
    }

文档:https://docs.nativescript.org/tooling/debugging/debugging