SQLite driver for Cordova apps using localForage.
cordova plugin add https://github.com/litehelpers/Cordova-sqlite-storage.git
npm i --save localforage localforage-cordovasqlitedriver
(ionic 2 users might prefer ths one)install the plugin by
cordova plugin add cordova-sqlcipher-adapter --save
Pass the key required by the database to localforage by passing a dbKey
property to the .config()
or .createInstance()
methods, or if using ionic-storage by passing dbKey
via IonicStorageModule in your NgModule.
Add support for the localforage.dropInstance()
method.
Add support for cordova-sqlcipher-adapter. Thanks to @kohlia for PRing this.
Use localforage v1.5 & drop @types.
Add typescript typings.
Refactor to es6.
Reduce driver size (almost by 50%) by "inheriting" the method implementations of the localforage.WEBSQL
driver.
Add support for newer versions of Cordova SQLite storage plugin (v0.8.x & v1.2.x).
UPGRADE WARNING: The default storage location for SQLite has changed in newer versions of Cordova SQLite storage plugin. The new "default
" location value is NOT the same as the old "default
" location and will break an upgrade for an app that was using the old default value (0) on iOS. If you are upgrading to a newer version of localForage-cordovaSQLiteDriver
you need to verify where your previous storage location was and update the location
property of the localForage database. Otherwise the default is 'default'
. This is to avoid breaking the iCloud Design Guide. See here for further details.
Try using the getSerializer()
(available in localforage v1.3) as the prefered way to retrieve the serializer.
defineDriver
and setDriver
to make localForage use the cordovaSQLiteDriver.<script src="cordova.js"></script> <script src="lib/localforage/dist/localforage.js"></script> <script src="lib/localForage-cordovaSQLiteDriver/dist/localforage-cordovasqlitedriver.js"></script> <script> localforage.defineDriver(window.cordovaSQLiteDriver).then(function() { return localforage.setDriver([ // Try setting cordovaSQLiteDriver if available, window.cordovaSQLiteDriver._driver, // otherwise use one of the default localforage drivers as a fallback. // This should allow you to transparently do your tests in a browser localforage.INDEXEDDB, localforage.WEBSQL, localforage.LOCALSTORAGE ]); }).then(function() { // this should alert "cordovaSQLiteDriver" when in an emulator or a device alert(localforage.driver()); // set a value; return localforage.setItem('testPromiseKey', 'testPromiseValue'); }).then(function() { return localforage.getItem('testPromiseKey'); }).then(function(value) { alert(value); }).catch(function(err) { alert(err); }); </script>
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4