We are excited to announce that Visual Studio 2015 RC will include the Tools for Apache Cordova. Starting today, you can build production quality mobile apps for iOS, Android and Windows using web technologies and nearly 100% shared code across platforms. With support for native device capabilities (e.g. camera, accelerometer, contact), offline scenarios and popular JavaScript frameworks (e.g. Angular, React and Backbone), the Tools for Apache Cordova contain everything web developers need for building cross-platform mobile apps using Visual Studio.
If you’re one of the thousands of developers who followed our previous CTPs, you’ll find a lot of familiar features. The release candidate includes all the same experiences that make Visual Studio a great dev environment – including simple setup, contextual Intellisense, a tight edit-debug loop, connection to back-end services and a fast Android emulator – but there are also some important changes based on user feedback that we think you’ll like. This post reviews just a few, but you’ll have to download the tools to experience them all.
Compatibility with “Stock” Cordova Projects
After trying previous CTP releases, many of you told us that you prefer the productivity of an IDE, but still need the portability afforded by a “stock” Cordova project. Some of you work on teams with mixed development environments. Consequently, there is often a need to open the same project on both Macs and PCs. Others wanted to take advantage of the rich Cordova development community where tutorials and help documents were “just a little different.”
Beginning with this release, the Tools for Apache Cordova share a common project system with ASP.NET 5. This project system is based on the file system and maps precisely to the “stock” Cordova directory structure. Build is federated almost entirely by Node.js and the Cordova framework. All these changes bring to the following benefits –
- You can open projects created by any Cordova-compatible CLI (e.g. Cordova, Ionic).
- You can easily switch to any version of Cordova you like. Simply change the version number in the Config Designer and Visual Studio will automatically acquire the new version on your next build.
- You can move interchangeably between the IDE and command line tools. If you want to perform a custom action (e.g. add a custom platform), open up the command prompt and go to work. Visual Studio will automatically pick up the changes.
- And, you can use the same project in both Windows and Mac development environments.
Note that if you’re migrating your project from a previous CTP release, there are a few extra steps required to open your project the first time in Visual Studio 2015 RC. You can find a comprehensive guide to migrating your project on MSDN.
Grunt, Gulp, Bower and Node-based Workflows
Starting with the RC release, it’s also much easier for you to build Cordova apps using tools familiar to many web developers. Do you use NPM or Bower for package management on a daily basis? No problem. You can use them for Cordova projects, too. Are you a fan of Node-based build-task managers like Grunt or Gulp? Done and done. In fact, we even have a growing library of tutorials designed to help you get started using Gulp with Cordova projects. Learn how Gulp can enable continuous integration with TFS or just perform common Gulp tasks.
New Templates from Ionic and Onsen UI
Like any technology, Cordova development has its share of challenges, and one of the biggest is UI development. It can be difficult to create controls that feel native and perform responsively. Luckily, there are some terrific JavaScript frameworks that make it easy. Two of the most popular are Ionic and Onsen UI. Starting today, we’re happy to announce templates straight from the makers of Ionic and Onsen UI are available in the VS Gallery. Each framework provides a variety of starting points to suit the most common project types.
Of course, if Ionic or Onsen UI aren’t your thing, you can still bring your favorite JavaScript or TypeScript framework with you. Ionic and Onsen UI templates are provided as optional, but are strong starting points for those of you who want to defer the complication of UI so you can begin writing your application logic immediately. In fact, you can see how other frameworks do it by checking out our samples for Angular, Backbone and WinJS.
Fresh Samples, Tutorials and Documentation
If you clicked on the Gulp tutorial link above, you may have noticed that our tutorials and Cordova app samples have moved to GitHub. We hope that the move to GitHub makes it easier for everyone to contribute and use. If you find any issues with our samples or tutorials, send us a Pull-Request or open a GitHub issue. We invite and look forward to your participation so we can grow stronger as a whole.
We are excited for you to tryout Visual Studio 2015 Tools for Apache Cordova and we look forward to seeing your feedback. You can share your feedback directly with the product team via UserVoice, Send-a-smile, Twitter, StackOverflow, or email.
Download VS Enterprise 2015 RC in English to get started right away (or go here for other languages and editions) and don’t forget to check “Tools for Apache Cordova” during setup.
Happy coding!
![]() |
Ryan J. Salva, Program Manager, Visual Studio Client Tools Team @RyanJSalva Ryan works on the Visual Studio Client Tools team where he looks after HTML, CSS and JavaScript. Today, he focuses primarily on tooling for Apache Cordova and Windows Store applications. However, he comes from a 15 year career in web standards development. |
![]() |
Ali Satter, Program Manager, Visual Studio Client Tools Team
Ali works on the Visual Studio Client Tools team where he spends his time thinking about how to improve Cordova developer experience inside Visual Studio. |
Nice! I will update my template cordova-multiplatform-template.js.org for RC in next days 😀 thanks for tour amazing work!
What about Cordova v5? You just supported Cordova 4 in RC, when the latest version of Cordova is v5. Will it be always like that: playing catchup?
Secondly, please provide some code snippets for simple use-cases like making AJAX calls and make it easy for users to enable device capabilities from one central place. For instance, when I built test app with VS 2015 CTP and tested on Android emulator, I was getting errors on making AJAX calls. Stackoverflow help suggested that it require some device capability setting to be enabled, but no tangible solution.
I thinks being able to make AJAX call on *all* devices and getting something in callback is a basic use-case.
Thanks for your patience.
This is great news…
http://www.signwebdesign.ir
Publish a working Intellisense under Visual Studio for JavaScript and not new functions with new bugs.
What is with Lightswitch? Develop it ready for the future?
@CKGrafico, I'm so glad you're excited. Please let us know what you think once you've had a chance to play with the tools for a while.
@David Bailey, I've got good news for you. We support Cordova 5.0 with RC. Even though it's not the default Cordova version, you can open config.xml, click on the Platforms tab, then change the Cordova CLI version to "5.0.0". The next time you build, Visual Studio will acquire and install Cordova 5.0. If you're working with an older version of Cordova, you can open that, too — anything over 2.3. In fact, support for multiple Cordova versions is exactly the scenario we were hoping to enable by introducing compatibility with "stock" Cordova projects. It's also worth noting that we have several Cordova committers within the Visual Studio product team. We regularly contribute, code review and vote for new Cordova releases, so anytime a new version comes out, there's a strong chance that our team played at least some part.
Regarding code samples, we hear you loud and clear. The product team has a long backlog of code samples and tutorials we hope to publish in the very near future at github.com/…/cordova-samples. In the meantime, I encourage you to continue asking questions on StackOverflow. The product team regularly monitors these forums and we aim to answer all tooling related questions there.
@j.nord, Sorry to hear you've been having troubles with JavaScript Intellisense. If you're having specific issues, please send us feedback from within Visual Studio by clicking the "smiley face" in the top-right corner when you experience an issue. After all, we can only fix the bugs we know about 🙂
Regarding LightSwitch, we have a team supporting the product. If there are particular features you'd like to see on the roadmap, post and vote for them on UserVoice at visualstudio.uservoice.com/…/52241-lightswitch
@salva:
Sorry but after years of experience with Visual Studio:
– UserVoice is a push down stack (see: Silverlight, Foxpro)
– Bugs and are not taken as seriously at Microsoft. For the last bug we waiting an waiting.
But now you have very nice future features with new nice bugs! (for the stack?)
Will there be comparable update (esp with compatible project directory) for the VS2013 add-on?
@j.nord – again, I'm sorry to hear you've had a poor experience in the past. Send-a-Smile is helpful because it can (optionally) send us diagnostic information about your dev environment at the time of the error. Failing that, if you'd like to send an email to the product team at vscordovatools@microsoft.com with repo steps or (even better) a sample project, we'll definitely try to get your concerns addressed. As you might imagine, Visual Studio has a very large user base and we receive a high volume of correspondence. We can't always address each person individually, but we try very hard to address issues when a trend emerges.
@Mark Harr, we do not have a similar update planned for VS 2013 at this time. The changes to the project system are substantial and technically difficult to deliver on the 2013 codebase. Having said that, VS 2015 Community Edition is free for most users. Maybe you can try it there?
@Ryan: Re: your comment above that "we do not have a similar update planned for VS 2013 at this time" has my pondering a number of questions.
Does this mean that you are dropping further support and development for VS 2013 for this tool?
Or are you saying that VS 2015 and VS2013 Cordova apps will have different and incompatible project structures, so that all members of a team must be on the same VS version?
Where can I find Ionic template for VS2015 that is "available in the VS Gallery"? Should I use "Ionic Project Templates" for VS2013?
Also, when creating a project from Cordova Multiplatform Template, I'm getting the error "A problem was encountered creating the sub project 'Node'. The template specified cannot be found." What now?
@Mark Harr, I'm super-excited to hear you've been using the tools and want to assure you that there is a path forward for VS 2013 users. As you know, the Tools for Apache Cordova were originally released as a Community Technical Preview (a.k.a. "CTP") extension for VS 2013. In the open source community, some folks might call it an "alpha" or "pre-release trial." This kind of release gives us the opportunity to collect feedback from early adopters and publicly demonstrate progress toward our roadmap. However, because it's pre-release software, it's also subject to rapid change as we react to community feedback. Project system changes reflect one of the strongest pieces of feedback we heard from developers who wanted to use VS with node-based tools like Grunt, Gulp, Bower and Ionic.
While we intend to issue at least one more update for the extension on VS 2013, the path for long-term support is on VS 2015 where the tools are included "in-box" with all versions including the free Community edition. Fortunately, migrating your 2013 project to the 2015 format is very easy. It's really just a slightly different folder structure + a new file called taco.json ("TACO" is our clever acronym for "Tools for Apache Cordova"). You can find the instructions here: go.microsoft.com/…/p
@Furgas, if you want to use the Ionic templates for VS 2015, you can download them here: visualstudiogallery.msdn.microsoft.com/b26474d5-c14d-4d69-bad5-37954538c506
Regarding your build error, I haven't seen that one before, but if you can email your build log to vscordovatools@microsoft.com with a short description of the problem, we'll try to get you sorted out. It sounds like something might have been messed up during setup/installation.
What about supporting meteor as well?
I knew if I waited long enough I wouldn't have to learn "Android Development Studio".
Thanks Microsoft for keeping a VS dev in business!
Hi, When I create a new project I get an error. "Error in creating sub project 'Task'".
What am i doing wrong ????
Cool!
This is really nice news. Please continue on this new road, I feel you really are trying new ways to deliver and support software at MS.
It takes time to convince some people of this fact, judging on some of the reactions on this and other fora though… 🙂
Well it's actually a new experience : a big commercial software company being open and public about development progress and releasing software-in-development….
You'll be closely watched and criticized during this development phase, but of course this also can be your biggest asset, creating one hell of a product!
Hi, this is great news!
But I have a problem with VS 2015 RC: I want to build a Cordova app for Platform "Windows Phone 8" that includes the Push Plugin (github.com/…/PushPlugin). Unfortunately, I cannot start the WP 8.0 emulator, I'm getting the following error:
2>ERROR: Error executing ""C:Program Files (x86)Microsoft SDKsWindows Phonev8.0ToolsXap DeploymentXapDeployCmd.exe" /enumeratedevices": Fehler: Ausnahme von HRESULT: 0x89721500
2> Command finished with error code 2: cmd /s /c ""C:Usersdeveloper2DocumentsVisual Studio 2015ProjectsTestCordovaVS2015RCTestCordovaVS2015RCplatformswp8cordovarun.bat" –nobuild "–target=Emulator WVGA 512MB" –debug"
2> ERROR running one or more of the platforms: Error: cmd: Command failed with exit code 2
2> You may not have the required environment or OS to run this project
So it seems the WP 8.0 emulator is not included in VS 2015? But unfortunately I cannot run the 8.0 build with WP 8.1 emulator (there is no 8.1 emulator in the list of run targets) .
Next problem is, when I try to build for "Windows Phone (Universal)", I can run the build with the WP 8.1 emulator, but I'm getting the error: "
0x800a139e – JavaScript runtime error: module cordova/windows8/commandProxy not found" in "PushPluginProxy.js".
With VS 2013 + Tools for Apache Cordova, running the WP 8 project on the WP 8.0 emulator and using push notifications has worked, but when running a Universal app on the 8.1 emulator the Push Plugin didn't work (it reported the device as Windows 8 tablet instead of Windows phone), so I want to build a WP 8.0 project that can use MPNS (Microsoft Push Notification Service) in the Push Plugin.
Can you please fix this? Thanks!
Hey Max, I was having the same issue but after days of working, I managed to get PushPlugin working on Win8.1/WP8.1. I think VS2015 RC does not support Win8/WP8, because when I opened Win8 C#/XAML projects, it only shows a line to advise migration to Win8.1. Anyway, to fix your problem, you will need to fix the bug in PushPlugin first. As the creator of the PushPlugin has not updated the repository for months even after other developers have mentioned to him, I have created a fork with the fix github.com/…/PushPlugin. Target it to Windows Phone (Universal). As WP8.1 is using WNS instead of MPNS, make sure your code is configured correctly with the URi from the store. Lastly, you probably can't test push notifications on Windows Phone Universal emulator, you may need an actual device. PushPlugin is not designed to work on windows emulator.
I've tried multiple times to download Xamarin but VS keeps asking me to download it again. At one point in the days of trials, I had changed Xamarin in programs and features to include the Visual Studio 2015 and then VS2015 gave an error … can't remember but it said something package load had failed. Uninstalled VS2010, Uninstalled VS2013, tried again, Xamarin said "hey there is no VS2013 here". Reinstalled VS2013, Reinstalled Xamarin from VS2015, I'm back to "Install Xamarin to develop iOS and Android apps in C#." page. This is on Windows 7. Has anybody found a solution to this?
Hi Ken,
thanks a lot! It seems your fork works on WP 8.1 (when creating a Universal App), even on the VS WP 8.1 emulator.
However, I also found this new version of a Push Plugin: github.com/…/phonegap-plugin-push (but is seems that does not yet support WP 8.1/Win8.1 with WNS)
Do you know that the debugging of typescript apps is broken since you upgrate to the rc version of visual studio 2015? The appBundle.js + sourcemap is buggy for typescript apps. If you have a bigger app an set the breakpoint in a .ts file, the debugger jumps not to the breakpoint ðŸ™
Please fix that with the next version. In the last CTP (6) everything was working correct.
Regards Henry
Just installed VS 2015 RC version. I imported the Ionic template from the template gallery but it will not open I get error:
"The project file '…..path to file here .. ' cannot be opened. The project type is not supported by this installation."
Same thing happens when i try to create new project, select javascript -Apache Cordova Apps.
Is there something else I need to install to get going with this?
Thanks
@Henry
Sorry to hear that TypeScript debugging seems to be broken. Could you please send us an email (vscordovatools@microsoft.com) with sample code and steps to reproduce the error?
@Genoki San
Sorry to hear that you were not able to load Ionic template/Cordova projects. During installation of VS 2015 RC, please make sure to check “Tools for Apache Cordova†during setup. If you are still unable to open/create a Cordova project, please email vscordovatools@microsoft.com
Vey helpfull article Quiet clear !
Unfortunately, none of what you have mentioned is supported by the VS 2015 RC..Be it OnsenUI, Monaco, Ionic…
While creating project using these templates, VS throws error.."The project file "C:….." cannot be opened. The project type is not supported by this installation"
i guess Ionic2 beta version is available now with angularjs 2 beta so when VS 2015 going to provide template for Ionic2 cordova