解决方案平台:Android
![Cordova-Android](https://istack.dev59.com/eC7qo.webp)
![Cordova-Windows](https://istack.dev59.com/FKy14.webp)
![Cordova-WP](https://istack.dev59.com/7Qzmd.webp)
我确认了Visual Studio模拟器适用于Android。我已经让配置文件“5" Lollipop (5.0) XXHDPI Phone”正常工作。
为了进行比较,我还添加了一个新的Windows Phone 8.1项目到我的解决方案中,并确认该项目允许选择调试目标。在工具栏中,“开始”一词被替换为“模拟器8.1 WVGA 4英寸512MB”。将此项目设置为启动项目后,“调试”菜单现在启用了“开始调试”选项。该项目如预期般启动。
由于Visual Studio模拟器对Android的支持已经可用,并且Visual Studio成功地针对Windows Phone模拟器进行了定位,因此似乎与Visual Studio的Cordova项目类型相关的配置存在问题。VS2015 Cordova项目与其“设备”目标之间的链接缺失。
有什么想法吗?
更新:另请参阅:无法在Visual Studio RTM中启动cordova应用程序进行调试
更新2:我已经做出了几个调整:
Apache Cordova的依赖检查工具发现缺少Android SDK组件。我添加了这些组件,满足了依赖检查。
Apache Cordova的环境变量覆盖工具没有显示ADT_HOME路径。我将其设置为“C:\Program Files (x86)\Android\android-sdk”。
我的构建输出显示“[taskdef] could not load definitions from resource emma_ant.properties. it could not be found.”。我添加了一个系统环境变量ANT_HOME,指向“C:\Program Files (x86)\Microsoft Visual Studio 14.0\Apps\apache-ant-1.9.3”,并在PATH中添加了“;%ANT_HOME%\bin”。仍然存在“emma_ant.properties”的消息,但不到警告或错误级别。
将解决方案平台设置为Android后,我的当前构建输出为:
1>------ Rebuild All started: Project: BlankCordovaApp2, Configuration: Debug Android ------
1> Buildfile: C:\Users\billvo\Documents\Visual Studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\build.xml
1> [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found.
1>
1> -check-env:
1> [checkenv] Android SDK Tools Revision 23.0.0
1> [checkenv] Installed at C:\Program Files (x86)\Android\android-sdk
1>
1> -setup:
1> [echo] Project Name: MainActivity
1> [gettype] Project Type: Application
1>
1> -pre-clean:
1>
1> clean:
1> [getlibpath] Library dependencies:
1> [getlibpath]
1> [getlibpath] ------------------
1> [getlibpath] Ordered libraries:
1> [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found.
1>
1> nodeps:
1>
1> -check-env:
1> [checkenv] Android SDK Tools Revision 23.0.0
1> [checkenv] Installed at C:\Program Files (x86)\Android\android-sdk
1>
1> -setup:
1> [echo] Project Name: MainActivity
1> [gettype] Project Type: Android Library
1>
1> -pre-clean:
1>
1> clean:
1>
1> BUILD SUCCESSFUL
1> Total time: 0 seconds
1> Your environment has been set up for using Node.js 0.12.2 (ia32) and npm.
1> ------ Ensuring correct global installation of package from source package directory: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\ApacheCordovaTools\packages\vs-tac
1> ------ Name from source package.json: vs-tac
1> ------ Version from source package.json: 1.0.0
1> ------ Package not currently installed globally.
1> ------ Installing globally from source package. This could take a few minutes...
1> > edge@0.10.1 install C:\Users\billvo\AppData\Roaming\npm\node_modules\vs-tac\node_modules\edge
1> > node tools/install.js
1> Success: platform check for edge.js: node.js ia32 v0.12.2
1> npm WARN engine npm@1.3.4: wanted: {"node":">=0.6","npm":"1"} (current: {"node":"0.12.2","npm":"2.7.4"})
1> npm WARN engine cordova-js@3.6.2: wanted: {"node":"~0.10.x"} (current: {"node":"0.12.2","npm":"2.7.4"})
1> npm WARN installMany normalize-package-data was bundled with npm@1.3.4, but bundled package wasn't found in unpacked tree
1> C:\Users\billvo\AppData\Roaming\npm\vs-tac-cli -> C:\Users\billvo\AppData\Roaming\npm\node_modules\vs-tac\vs-tac-cli.cmd
1> vs-tac@1.0.0 C:\Users\billvo\AppData\Roaming\npm\node_modules\vs-tac
1> ├── rimraf@2.2.6
1> ├── ncp@0.5.1
1> ├── mkdirp@0.3.5
1> ├── q@1.0.1
1> ├── semver@2.3.1
1> ├── adm-zip@0.4.4
1> ├── fstream@0.1.28 (inherits@2.0.1, graceful-fs@3.0.8)
1> ├── optimist@0.6.1 (wordwrap@0.0.3, minimist@0.0.10)
1> ├── tar@0.1.20 (inherits@2.0.1, block-stream@0.0.8)
1> ├── elementtree@0.1.6 (sax@0.3.5)
1> ├── request@2.36.0 (forever-agent@0.5.2, aws-sign2@0.5.0, qs@0.6.6, oauth-sign@0.3.0, tunnel-agent@0.4.1, json-stringify-safe@5.0.1, mime@1.2.11, node-uuid@1.4.3, tough-cookie@2.0.0, http-signature@0.10.1, hawk@1.0.0, form-data@0.1.4)
1> ├── ripple-emulator@0.9.30 (connect-xcors@0.5.2, colors@0.6.0-1, open@0.0.3, accounting@0.4.1, request@2.12.0, moment@1.7.2, express@3.1.0)
1> ├── edge@0.10.1 (edge-cs@0.2.7, nan@1.8.4)
1> └── plugman@0.22.4 (q@0.9.7, underscore@1.4.4, nopt@1.0.10, rc@0.3.0, cordova-lib@0.21.6, npm@1.3.4)
1> ------ npm install of vs-tac@1.0.0 from C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\ApacheCordovaTools\packages\vs-tac completed.
1> ------ Installing Cordova tools cordova@4.3.1 for project from npm. This could take a few minutes...
1> npm WARN engine npm@1.3.4: wanted: {"node":">=0.6","npm":"1"} (current: {"node":"0.12.2","npm":"2.7.4"})
1> npm WARN engine cordova-js@3.8.0: wanted: {"node":"~0.10.x"} (current: {"node":"0.12.2","npm":"2.7.4"})
1> npm WARN engine xmlbuilder@2.2.1: wanted: {"node":"0.8.x || 0.10.x"} (current: {"node":"0.12.2","npm":"2.7.4"})
1> npm WARN installMany normalize-package-data was bundled with npm@1.3.4, but bundled package wasn't found in unpacked tree
1> cordova@4.3.1 node_modules\cordova
1> ├── underscore@1.7.0
1> ├── q@1.0.1
1> ├── nopt@3.0.1 (abbrev@1.0.7)
1> └── cordova-lib@4.3.1 (valid-identifier@0.0.1, osenv@0.1.0, properties-parser@0.2.3, bplist-parser@0.0.6, mime@1.2.11, unorm@1.3.3, semver@2.0.11, dep-graph@1.1.0, shelljs@0.3.0, rc@0.5.2, through2@0.6.3, npmconf@0.1.16, xcode@0.6.7, elementtree@0.1.5, d8@0.4.4, request@2.47.0, glob@4.0.6, tar@1.0.2, init-package-json@1.7.1, plist@1.1.0, cordova-js@3.8.0, npm@1.3.4)
1> ------ npm install of cordova@4.3.1 from npm completed.
1> ------ Build Settings:
1> ------ Build Settings:
1> ------ platformConfigurationBldDir: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\bld\Android\Debug
1> ------ platformConfigurationBinDir: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\bin\Android\Debug
1> ------ buildCommand: prepare
1> ------ platform: Android
1> ------ cordovaPlatform: android
1> ------ configuration: Debug
1> ------ cordovaConfiguration: Debug
1> ------ projectName: BlankCordovaApp2
1> ------ projectSourceDir: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2
1> ------ npmInstallDir: C:\Users\billvo\AppData\Roaming\npm
1> ------ language: en-US
1> ------ Platform android already exists
1> ------ Updating plugins
1> ------ Currently installed plugins:
1> ------ Currently installed dependent plugins:
1> ------ Currently configured plugins:
1> ------ Preparing platform: android
1> Generating config.xml from defaults for platform "android"
1> Calling plugman.prepare for platform "android"
1> Preparing android project
1> Processing configuration changes for plugins.
1> Iterating over installed plugins: []
1> Writing out cordova_plugins.js...
1> Wrote out Android application name to "BlankCordovaApp2"
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-hdpi\screen.png
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-ldpi\screen.png
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-mdpi\screen.png
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-xhdpi\screen.png
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-hdpi\screen.png
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-ldpi\screen.png
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-mdpi\screen.png
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-xhdpi\screen.png
1> splash screens: [{"src":"res/screens/android/screen-hdpi-landscape.png","density":"land-hdpi","platform":"android"},{"src":"res/screens/android/screen-ldpi-landscape.png","density":"land-ldpi","platform":"android"},{"src":"res/screens/android/screen-mdpi-landscape.png","density":"land-mdpi","platform":"android"},{"src":"res/screens/android/screen-xhdpi-landscape.png","density":"land-xhdpi","platform":"android"},{"src":"res/screens/android/screen-hdpi-portrait.png","density":"port-hdpi","platform":"android"},{"src":"res/screens/android/screen-ldpi-portrait.png","density":"port-ldpi","platform":"android"},{"src":"res/screens/android/screen-mdpi-portrait.png","density":"port-mdpi","platform":"android"},{"src":"res/screens/android/screen-xhdpi-portrait.png","density":"port-xhdpi","platform":"android"}]
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-hdpi-landscape.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-hdpi\screen.png
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-ldpi-landscape.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-ldpi\screen.png
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-mdpi-landscape.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-mdpi\screen.png
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-xhdpi-landscape.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-land-xhdpi\screen.png
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-hdpi-portrait.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-hdpi\screen.png
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-ldpi-portrait.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-ldpi\screen.png
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-mdpi-portrait.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-mdpi\screen.png
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\screens\android\screen-xhdpi-portrait.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-port-xhdpi\screen.png
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-hdpi\icon.png
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-ldpi\icon.png
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-mdpi\icon.png
1> deleted: C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-xhdpi\icon.png
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\icons\android\icon-36-ldpi.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-ldpi\icon.png
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\icons\android\icon-48-mdpi.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-mdpi\icon.png
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\icons\android\icon-72-hdpi.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-hdpi\icon.png
1> copying image from C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\res\icons\android\icon-96-xhdpi.png to C:\Users\billvo\documents\visual studio 2015\Projects\BlankCordovaApp2\BlankCordovaApp2\platforms\android\res\drawable-xhdpi\icon.png
1> Wrote out Android package name to "io.cordova.myapp2a20d4"
========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
我仍然无法选择调试目标设备,无论是为Android、Windows-AnyCPU还是Windows Phone 8构建。
更新3:下面的图片显示了安装的Visual Studio 2015组件。我尝试添加Visual C++移动开发,但在Cordova中没有看到任何变化,所以我将其删除。
更新4: 当我登录一个新的本地用户账户时,我能够对Visual Studio模拟器进行Android调试。这告诉我问题很可能是特定于我的主要Windows账户配置文件。我可以通过删除我的配置文件并重新开始来解决这个问题。