CordovaSQLite not working in iOS

I am using a Windows 7 64 bit computer and a 2015 Mac Mini to compile the same app for Android (4.1.1 and above) and iOS (8 and above). Both environments are working from the same code base.

I have the following plugins installed:

  • com.synconset.imagepicket 1.0.7
  • cordova-plugin-camera 1.2.0
  • cordova-plugin-crosswalk-webview 1.0.0
  • cordoba-plugin-file 3.0.0
  • cordova-plugin-geolocation 1.0.1
  • cordova-plugin-google-analytics 0.8.1
  • cordova-plugin-inappbrowser 1.1.1
  • cordova-plugin-network-information 1.1.0
  • cordova-plugin-whitelist 1.0.0
  • cordova-sqlite-storage 0.7.15-pre

I also have the following folders in www/lib:

  • angular
  • angular-animate
  • angular-cookies
  • angular-sanitize
  • angular-ui-router
  • angularLocalStorage
  • ionic
  • moment
  • moment-timezone
  • ngCordova
  • ngstorage

My version of Cordova is 5.4.1.

My app opens a database at certain points within app.js and services.js (app.js is loaded before services.js in my index.html file):

db = $cordovaSQLite.openDB("mydb.db");

Any and all calls to the database, including those contained within $ionicPlatform.ready() inside app.js, work fine on Android, but fail on iOS. I have tried using cordovaSQLite on a generation 2 iPad with iOS 9.2 as well as an iPhone 6s Plus in Simulator. Simulator returns the following error when inspecting in Safari:

Error: undefined is not an object(evaluating 'n.sqlitePlugin.openDatabase')

None of the usual answers on this topic have been of any help to me since most topics seem to be solved by just wrapping in $ionicPlatform.ready(), but I’ve already done that and it only works on one platform. Can anyone please point me in the right direction to solve this discrepancy?

Thanks in advance.

I am having the exact same issue, did you ever solve this?

On iOS most of my problems went away by closing XCode, opening Terminal, and executing:

ionic platform remove iOS

ionic platform add iOS

cordova prepare