Asd*_*dfg 9 android contacts cordova
有没有办法只显示有电话号码的联系人?
现在我正在获取所有联系人,然后循环通过每个联系人并找出他们的电话号码,但我想知道是否有办法将参数传递给contactFindOptions对象,以便它只接收有电话号码的联系人?
这就是我的代码目前的样子:
var options = new ContactFindOptions();
options.filter=""; //Can i pass something here to pick only contacts with phone number
options.multiple=true;
var fields = ["displayName", "phoneNumbers"];
navigator.contacts.find(fields, onSuccess, onError, options);
function onSuccess(contacts) {
for (var i=0; i<contacts.length; i++) {
console.log("Display Name = " + contacts[i].displayName);
if(null != contacts[i].phoneNumbers)
{
for(var j=0;j<contacts[i].phoneNumbers.length;j++)
{
console.log("Name = " + contacts[i].displayName);
console.log("Phone = " + contacts[i].phoneNumber[j].value);
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我相信 Cordova API 不允许过滤来完成您的要求。
从他们的文档中:http://docs.phonegap.com/en/2.5.0/cordova_contacts_contacts.md.html#contacts.find
它说:
contactFindOptions.filter 字符串可在查询联系人数据库时用作搜索过滤器。如果提供,则不区分大小写的部分值匹配将应用于 contactFields 参数中指定的每个字段。如果在与任何指定字段的比较中找到匹配项,则返回该联系人。
我不相信您可以使用它来确定电话号码字段的非空值。
| 归档时间: |
|
| 查看次数: |
4242 次 |
| 最近记录: |