|
contacts.find 查询设备通讯录数据库,并返回包含指定字段的一个或多个Contact对象。- navigator.service.contacts.find(contactFields, contactSuccess, contactError, contactFindOptions);
复制代码 说明:
contacts.find是一个查询设备通讯录数据库并返回Contact对象数组的同步函数。返回的对象会被传递给contactSuccess回调函数的contactSuccess参数。
用户必须在contactFields参数中指定联系人的字段作为搜索限定符。系统传递给contactSuccess回调函数的Contact对象属性只会包含在contactFields参数中定义的字段。如果定义0长度的contactFields参数会导致返回的Contact对象只填充了id属性。
contactFindOptions.filter字符串可以用来作为查询通讯录数据库时的搜索过滤器。如果设定了该参数,系统会对通讯录数据库中所有联系人按照contactFields参数中指定的每个字段进行不区分大小写的部分值匹配。任何指定的字段符合过滤器所要求的内容的联系人数据都会被返回。
属性:
contactFields:Contact字段,用作搜索限定符。在返回的Contact对象中只有这些字段有值。(DOMString[]类型)[必填]
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);
复制代码 完整的范例:- <!DOCTYPE html>
- <html>
- <head>
- <title>Contact Example</title>
- <script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
- <script type="text/javascript" charset="utf-8">
- // PhoneGap加载完毕
- function onDeviceReady() {
- // 从所有联系人中查找任意名字字段中包含“Bob”的联系人
- var options = new ContactFindOptions();
- options.filter="Bob";
- var fields = ["displayName", "name"];
- navigator.service.contacts.find(fields, onSuccess, onError, options);
- }
- // onSuccess: 获取当前联系人结果集的快照
- function onSuccess(contacts) {
- for (var i=0; i<contacts.length; i++) {
- console.log("Display Name = " + contacts[i].displayName);
- }
- }
- // onError: 获得联系人失败
- function onError() {
- alert('onError!');
- }
- </script>
- </head>
- <body>
- <h1>Example</h1>
- <p>Find Contact</p>
- </body>
- </html>
复制代码 |
|