cordova is a framework aimed to package (heavily adapted) webapps (conceived for the local device webview) in a mobile device friendly package along with a system specific compiled library(es) who expose system api to webview.
Cordova is also the nodejs command name used in the app build workflow (Cordova CLI, command line interface).
Phonegap is a cordova framework distro from Adobe and the corresponding nodejs command (phonegap CLI). The most important phonegap addition to cordova is the possibility to pass your project to the adobe proprietary building service Phonegap Build who work outofthebox for every supported target device.
the two command (cordova and phonegap) are slightly differents: all of cordova functions are in phonegap, who internally calls cordova, and phonegap add some more, and slightly change it's syntax (refers to cordova CLI docs and phonegap CLI docs for differences).
the framework's toolschain is a little complex. to have a working cordova\phonegap env you need, in order:
- node.js
- git
- plugman (via node -g)
- phonegap (via node -g)
- cordova (via node -g)
- ant
[yourplatform]
developement kit (i.e. ADK android developement kit) and his dependancies
another confusing feature starting from phonegap/cordova3.x is that almost every core API is now packaged as cordova's external plugin. That means that for a real word working app you almost for sure need to add to your toolchain some of these, which is (normally) easily do via cordova CLI option plugin add <pluginRepositoryAddress>
.
Barcode api are in a third party plugin who can be added to your project in the same way.
You can google all of these info and setup your environement correctly.