我正在尝试访问电话上的联系人.我正在使用下面的代码来执行此操作,但是navigator.contacts.find无法正常工作.它不会返回错误或成功消息.如果在该行代码之后放置任何类型的警报,它将不会出现.
function read_contacts(){
var options = new ContactFindOptions( );
options.filter = ""; //leaving this empty will find return all contacts
options.multiple = true; //return multiple results
var filter = ["displayName"]; //an array of fields to compare against the options.filter
navigator.contacts.find(filter, successFunc, errFunc, options); //breaking the code
function successFunc( matches ){
alert("reading contacts...");
for( var i=0; i<matches.length; i++){
alert( matches[i].displayName );
}
function errFunc(){
alert("Error finding contacts");
}
}
}
解决方法:
尝试这个 –
function onDeviceReady() {
var options = new ContactFindOptions();
options.filter = ""; // empty search string returns all contacts
options.multiple = true; // return multiple results
filter = ["displayName", "name"]; // return contact.displayName
navigator.contacts.find(filter, onSuccess, one rror, options);
}
// onSuccess: Get a snapshot of the current contacts
function onSuccess(contacts) {
for (var i = 0; i < contacts.length; i++) {
console.log("Display Name = " + contacts[i].displayName);
}
}
// one rror: Failed to get the contacts
function one rror(contactError) {
alert('onError!');
}
尝试使用此代码查找具有显示名称的所有联系人.