一、cordova-plugin-contacts插件可以操作手机联系人,需要客户端用户同意授权当前程序访问。
1.安装命令
cordova plugin add cordova-plugin-contacts2.插件相关api和对象
操作方法
- navigator.contacts.create
- navigator.contacts.find
- navigator.contacts.pickContact
- Contact
- ContactName
- ContactField
- ContactAddress
- ContactOrganization
- ContactFindOptions
- ContactError
- ContactFieldType
获取当前系统的联系人信息的可用字段:
3.查询联系人、获取联系人列表
//获取列表 var contactFileds = ["displayName", "name", "phoneNumbers", "emails", "address"]; //filter制定为空或不指定返回所有联系人列表 var options = { filter: "", multiple: true }; navigator.contacts.find(contactFileds, onSuccess, onError, options); function onSuccess(contacts) { console.info(contacts); var str = ''; for (var i = 0; i < contacts.length; i++) { str += "Contact[" + i + "]: " + JSON.stringify(contacts[i])+'<br />'; } app3.result1 = str; } function onError(err) { app3.result1 = JSON.stringify(err); }
输出联系人详细信息:
4.新增联系人
//简单创建方式 var contact1 = navigator.contacts.create({ displayName: '测试One', phoneNumbers: [{ value: '15112341234' }] }); //保存处理 contact1.save(function () { alert('添加成功'); }, function (err) { alert('添加失败:' + JSON.stringify(err)); }); console.info(contact1); //详细方式创建 var contact2 = navigator.contacts.create(); contact2.displayName = '测试Two'; var tmpName = new ContactName(); tmpName.givenName = "试Two"; tmpName.familyName = '测'; tmpName.formatterd = '测 试Two'; contact2.name = tmpName; var phoneNumbers = []; phoneNumbers[0] = new ContactField('work', '0531-12341234', false); phoneNumbers[1] = new ContactField('mobile', '15112341234', true);//是否是主号 contact2.phoneNumbers = phoneNumbers; console.info(contact2); //保存 contact2.save(function () { alert('添加成功'); }, function (err) { alert('添加失败:' + JSON.stringify(err)); });5.删除联系人
//1.查找获取联系人对象 navigator.contacts.find(["displayName"], function (res) { console.info(res); //删除处理 for (var i = 0; i < res.length; i++) { var item = res[i]; item.remove(function () { alert('删除成功'); }, function () { alert('删除失败'); }); } }, function (err) { alert(JSON.stringify(err)); }, { filter: 'Two' });更多:
cordova-plugin-device-motion加速计和cordova-plugin-device-orientation设备方向
cordova-plugin-globalization本地化