“ | contacts对象提供对设备通讯录数据库的访问。 |
var contact = navigator.service.contacts.create(properties);
var myContact = navigator.service.contacts.create({"displayName": "Test User"});
Contact Example
navigator.service.contacts.find(contactFields, contactSuccess, contactError, contactFindOptions);
function onSuccess(contacts) { alert('Found ' + contacts.length + ' contacts.'); } function onError() { alert('onError!'); } // 从所有联系人中查找任意名字字段中包含“Bob”的联系人 var options = new ContactFindOptions(); options.filter="Bob"; var fields = ["displayName", "name"]; navigator.service.contacts.find(fields, onSuccess, onError, options);
Contact Example
function onSuccess(contacts) { alert("Save Success"); } function onError(contactError) { alert("Error = " + contactError.code); } // 建立一个新的联系人对象 var contact = navigator.service.contacts.create(); contact.displayName = "Plumber"; contact.nickname = "Plumber"; //同时指定以支持所有设备 // 填充一些字段 var name = new ContactName(); name.givenName = "Jane"; name.familyName = "Doe"; contact.name = name; // 存储到设备上 contact.save(onSuccess,onError);
// 克隆联系人对象 var clone = contact.clone(); clone.name.givenName = "John"; console.log("Original contact name = " + contact.name.givenName); console.log("Cloned contact name = " + clone.name.givenName);
function onSuccess() { alert("Removal Success"); } function onError(contactError) { alert("Error = " + contactError.code); } // 从设备上删除该联系人 contact.remove(onSuccess,onError);
Contact Example
// 显示所有联系人的地址信息 function onSuccess(contacts) { for (var i=0; i< contacts.length; i++) { for (var j=0; j< contacts[i].addresses.length; j++) { alert("Pref: " + contacts[i].addresses[j].pref + "\n" + "Type: " + contacts[i].addresses[j].type + "\n" + "Formatted: " + contacts[i].addresses[j].formatted + "\n" + "Street Address: " + contacts[i].addresses[j].streetAddress + "\n" + "Locality: " + contacts[i].addresses[j].locality + "\n" + "Region: " + contacts[i].addresses[j].region + "\n" + "Postal Code: " + contacts[i].addresses[j].postalCode + "\n" + "Country: " + contacts[i].addresses[j].country); } } } function onError(contactError) { alert('onError!'); } // 从全部联系人中查找 var options = new ContactFindOptions(); options.filter=""; var filter = ["displayName","addresses"]; navigator.contacts.find(filter, onSuccess, onError, options);
Contact Example
// 建立一个新的联系人记录 var contact = navigator.service.contacts.create(); // 存储联系人电话号码到ContactField[]数组 var phoneNumbers = [3]; phoneNumbers[0] = new ContactField('work', '212-555-1234', false); phoneNumbers[1] = new ContactField('mobile', '917-555-5432', true); // 首选项 phoneNumbers[2] = new ContactField('home', '203-555-7890', false); contact.phoneNumbers = phoneNumbers; // 保存联系人 contact.save();
Contact Example
// 成功后的回调函数 function onSuccess(contacts) { for (var i=0; i< ;contacts.length; i++) { alert(contacts[i].displayName); } } // 出错后的回调函数 function onError() { alert('onError!'); } // 指定联系人搜索条件 var options = new ContactFindOptions(); options.filter=""; // 空搜索字符串将返回所有联系人 options.multiple=true; // 可返回多条记录 filter = ["displayName"]; // 仅返回contact.displayName字段 // 查找联系人 navigator.service.contacts.find(filter, onSuccess, onError, options);
Contact Example
function onSuccess(contacts) { for (var i=0; i< ;contacts.length;i++) { alert('Formatted: ' + contacts[i].name.formatted + '\n' + 'Family Name: ' + contacts[i].name.familyName + '\n' + 'Given Name: ' + contacts[i].name.givenName + '\n' + 'Middle Name: ' + contacts[i].name.middleName + '\n' + 'Suffix: ' + contacts[i].name.honorificSuffix + '\n' + 'Prefix: ' + contacts[i].name.honorificSuffix); } } function onError() { alert('onError!'); } var options = new ContactFindOptions(); options.filter=""; filter = ["displayName","name"]; navigator.service.contacts.find(filter, onSuccess, onError, options);
Contact Example
function onSuccess(contacts) { for (var i=0; i< contacts.length; i++) { for (var j=0; j< contacts[i].organizations.length; j++) { alert("Pref: " + contacts[i].organizations[j].pref + "\n" + "Type: " + contacts[i].organizations[j].type + "\n" + "Name: " + contacts[i].organizations[j].name + "\n" + "Department: " + contacts[i].organizations[j].department + "\n" + "Title: " + contacts[i].organizations[j].title); } } } function onError() { alert('onError!'); } var options = new ContactFindOptions(); options.filter=""; filter = ["displayName","organizations"]; navigator.service.contacts.find(filter, onSuccess, onError, options);
Contact Example
function(contacts) { // 后续操作 }
function contactSuccess(contacts) { for (var i=0; i< contacts.length; i++) { console.log(“Display Name = ” + contacts[i].displayName; } }
["name", "phoneNumbers", "emails"]