cordova implementation