1
votes

I'm trying to get my head around the way Visual Studio - Multi-Device Hybrid App project lays out a file structure vs how Cordova (PhoneGap) lays out a file structure.

I'm a bit confused because I thought this VS extension was for building phone Gap applications

Here is the comparison of the file structures between Visual Studio (MDHA) and the counter part from Cordova (PhoneGap).

cordova create hello au.com.IdeasMen KeepInContact

The Cordova Create command builds a file structure like this

enter image description here

VS project Multi-Device Hybrid App looks like this

enter image description here

This second structure looks a little like the content of the Cordova WWW folder, but even then it is only similar not the same.

1
You have to compare the Android generated project that is under platforms folder. Generate this structure by command: cordova platform add androidmalcubierre
Thanks, I'll look at thatDavid Cruwys

1 Answers

1
votes

Firstly, let's distinguish between Cordova and PhoneGap as separate things. Cordova is the open source implementation and while it shares a core with PhoneGap, there are always chances that Adobe could do something "special" with PhoneGap to enhance their service.

Secondly, about the nature of the project structure. While Multi-Device Hybrid Apps tries hard to maintain the same look and feel as that of a Cordova project, there are certainly design and cosmetic decisions that have been taken to make it more usable for developers. Some might say that maintaining the exact same structure helps the familiarity argument, and that is also a valid point.

The most important thing to remember is that whatever the structure looks like inside Visual Studio, at the heart of it, MDHA is not performing any proprietary actions with the project. It is only an enabler to let developers build with the Cordova CLI by providing a GUI to work with. Under the covers, it still renders the project into a Cordova like project.

That, and all the value add features like setting up your machine, developing and debugging, adding services, connecting to emulators and building and publishing.

Disclosure: I'm a Program Manager on the Visual Studio Cordova Tools product team.