I am using ionic framework 1.3 and trying to read phone contacts using:
cordova plugin add cordova-plugin-contacts
And
.controller('TestControlsCtrl', function($scope, $stateParams, $cordovaContacts) {
$scope.selectContacts = function() {
$cordovaContacts.find().then(function(allContacts) {
$scope.contacts = allContacts;
});
};
});
But I am getting this error
09-26 19:07:25.539 E/Web Console( 4188): Error: [$injector:unpr] Unknown provider: $cordovaContactsProvider <- $cordovaContacts <- TestControlsCtrl
09-26 19:07:25.539 E/Web Console( 4188): http://errors.angularjs.org/1.5.3/$injector/unpr?p0=%24cordovaContactsProvider%20%3C-%20%24cordovaContacts%20%3C-%20TestControlsCtrl
09-26 19:07:25.539 E/Web Console( 4188): at file:///android_asset/www/lib/ionic/js/ionic.bundle.js:13438:12
09-26 19:07:25.539 E/Web Console( 4188): at file:///android_asset/www/lib/ionic/js/ionic.bundle.js:17788:19
09-26 19:07:25.539 E/Web Console( 4188): at Object.getService [as get] (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:17941:39)
09-26 19:07:25.539 E/Web Console( 4188): at file:///android_asset/www/lib/ionic/js/ionic.bundle.js:17793:45
09-26 19:07:25.539 E/Web Console( 4188): at getService (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:17941:39)
09-26 19:07:25.539 E/Web Console( 4188): at injectionArgs (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:17965:58)
09-26 19:07:25.539 E/Web Console( 4188): at Object.instantiate (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:18007:18)
09-26 19:07:25.539 E/Web Console( 4188): at $controller (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:23412:28)
09-26 19:07:25.539 E/Web Console( 4188): at [object Object].appendViewElement (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:59900:24)
09-26 19:07:25.539 E/Web Console( 4188): at Object.render (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:57893:41) at file:///android_asset/www/lib/ionic/js/ionic.bundle.js:26794
NPM verion 3.8.6 Node version 5.11.0
What am I doing wrong? Please help
I added this plugin Cordova plugin add cordova-plugin-contacts
controller:
$scope.allContacts= [];
function findContacts() {
var options = new ContactFindOptions();
options.filter = "";
options.multiple = true;
fields = ["displayName"];
navigator.contacts.find(fields, contactfindSuccess, contactfindError, options);
function contactfindSuccess(contacts) {
for (var i = 0; i < contacts.length; i++) {
alert("Display Name = " + contacts[i].displayName);
$scope.allContacts.push(contacts[i]);
}
}
function contactfindError(message) {
alert('Failed because: ' + message);
}
}