Search code examples
ionic2

Ionic 2 - Error : No provider for Native Storage


I am using Native Storage plugin as specified in the Ionic documentation however when I deploy on the device or emulator I get a white screen. When I inspected further after connecting it to chrome > Remote Devices > Inspect. In the console I get this error ERROR Error: No provider for NativeStorage!

Any pointers ?. Please help

below is my error log:

NativeStorage!
    at Error (native)
    at injectionError (file:///android_asset/www/build/main.js:1509:86)
    at noProviderError (file:///android_asset/www/build/main.js:1547:12)
    at ReflectiveInjector_._throwOrNull (file:///android_asset/www/build/main.js:3048:19)
    at ReflectiveInjector_._getByKeyDefault (file:///android_asset/www/build/main.js:3087:25)
    at ReflectiveInjector_._getByKey (file:///android_asset/www/build/main.js:3019:25)
    at ReflectiveInjector_.get (file:///android_asset/www/build/main.js:2888:21)
    at NgModuleInjector.get (file:///android_asset/www/build/main.js:3835:52)
    at resolveDep (file:///android_asset/www/build/main.js:11202:45)
    at createClass (file:///android_asset/www/build/main.js:11071:32)View_MyApp_Host_0 @ ng:///AppModule/MyApp_Host.ngfactory.js:6

This my version info:

cordova CLI: 6.5.0
Ionic Framework Version: 3.2.1
Ionic CLI Version: 2.2.3
Ionic App Lib Version: 2.2.1
Ionic App Scripts Version: 1.3.7
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Windows 10
Node Version: v6.10.0
Xcode version: Not installed

Package.JSON

 {
  "name": "cccccccc",
  "version": "0.0.1",
  "author": "Ionic Framework",
  "homepage": "http://ionicframework.com/",
  "private": true,
  "scripts": {
    "clean": "ionic-app-scripts clean",
    "build": "ionic-app-scripts build",
    "lint": "ionic-app-scripts lint",
    "ionic:build": "ionic-app-scripts build",
    "ionic:serve": "ionic-app-scripts serve"
  },
  "dependencies": {
    "@angular/common": "4.1.0",
    "@angular/compiler": "4.1.0",
    "@angular/compiler-cli": "4.1.0",
    "@angular/core": "4.1.0",
    "@angular/forms": "4.1.0",
    "@angular/http": "4.1.0",
    "@angular/platform-browser": "4.1.0",
    "@angular/platform-browser-dynamic": "4.1.0",
    "@ionic-native/core": "3.7.0",
    "@ionic-native/facebook": "^3.10.2",
    "@ionic-native/native-storage": "^3.10.3",
    "@ionic-native/splash-screen": "3.7.0",
    "@ionic-native/status-bar": "3.7.0",
    "@ionic/storage": "2.0.1",
    "cordova-android": "^6.2.3",
    "cordova-plugin-console": "^1.0.5",
    "cordova-plugin-device": "^1.1.4",
    "cordova-plugin-facebook4": "^1.9.0",
    "cordova-plugin-splashscreen": "^4.0.3",
    "cordova-plugin-statusbar": "^2.2.2",
    "cordova-plugin-whitelist": "^1.3.1",
    "cordova-plugin-nativestorage":"^2.2.2",
    "ionic-angular": "3.2.1",
    "ionic-native": "^2.5.1",
    "ionic-plugin-keyboard": "^2.2.1",
    "ionicons": "3.0.0",
    "rxjs": "5.1.1",
    "sw-toolbox": "3.6.0",
    "zone.js": "0.8.10"
  },
  "devDependencies": {
    "@ionic/app-scripts": "1.3.7",
    "@ionic/cli-plugin-cordova": "1.1.2",
    "@ionic/cli-plugin-ionic-angular": "1.1.2",
    "typescript": "2.2.1"
  },
  "description": "An Ionic project",
  "cordova": {
    "plugins": {
      "cordova-plugin-console": {},
      "cordova-plugin-device": {},
      "cordova-plugin-splashscreen": {},
      "cordova-plugin-statusbar": {},
      "cordova-plugin-whitelist": {},
      "ionic-plugin-keyboard": {},
      "cordova-plugin-facebook4": {
        "APP_ID": "3xxxxxxxxxx2",
        "APP_NAME": "cxxxxxxe"
      }
    },
    "platforms": [
      "android"
    ]
  }
}

Solution

  • First of all thank you for all the responses, @Suraj I checked the package.json after you mentioned it, there I had to manually add "cordova-plugin-nativestorage":"^2.2.2", under dependencies And then did clean and build. Now it works fine on Device and on Emulator. A big thank you for bringing that up!!