Cordova updates and the pain!

Being back after a long time!

You know I have to be here and there, everywhere!

So there was this error, wasting my days from a long time!

And whenever I do an update, this used to come back on my ios builds.

Plugins/cordova-plugin-whitelist/CDVNavigationWhitelistPlugin.h:23:9: fatal error: 
      'Cordova/CDVURLRequestFilter.h' file not found
#import <Cordova/CDVURLRequestFilter

And I searched internet for long (2 months I recall!) but no solutions!

Funny thing,

Earlier, any problem I used to have, I simply did

cordova platform remove ios

cordova platform add ios

And it used work like a charm!

But, not this time!

Stumbled upon this one today! (I dont know why not earlier, anyways – here is the link!)

The key point to note over there is

Cordova-ios version 4.0 and greater does not require the cordova-plugin-whitelist plugin to be installed, however it’s configuration details apply to iOS too.

Why Cordova? Why you do this? Would it not have been helpful to keep some helpful suggestions when showing the errors, or same backward compatibility!

So the solution is :

execute the following command

 cordova plugin remove cordova-plugin-whitelist

And the build was now prepared error-free, smoothly! Feels relieved! I was done blaming Xcode for all the issues!

Please note, however if you use the same code space to prepare build for android (where this plugin is still needed), you might have to create a copy of the project and add the plugin to the android version of the project separately. (Yes we need options to add different plugins to different platforms of the same project!)

Hope this helps someone! Cheers!

Solution : Cordova Jquery Ajax calls not working @Android4.x

On Cordova 5.x , for the android platform a plain ajax call does not work

It does not give any detailed error

readystate: 0
status : 0
errortext : error



Things are changing.

After doing research on the issue and trying out different options, I came across this.

1. You need to install the cordova whitelist plugin (this is not available for ios currently though)

cordova plugin add cordova-plugin-whitelist

2. In config.xml


in place of the old, tag.

And bam, all the ajax calls are working properly.

Note: You will need to add the following to your html files in the section.

<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'"/>

else you will get the following error message while running the app.

“No Content-Security-Policy meta tag found. Please add one when using the cordova-plugin-whitelist plugin.”

Hope it helps somebody facing similar issues.