ios - phonegap) 检索 iphone 联系人电子邮件时发生错误

标签 ios cordova

我正在使用 contact.find 函数从联系人列表中获取电子邮件。
获取所有联系人列表的名称很好,但我无法获取联系人列表的电子邮件。
当我从联系人列表中解析电子邮件数据时,似乎发生了 javascript 错误。
下面是我的代码。

var contactFxn = {

getContact : function(){
    var options = new ContactFindOptions();
    var fields = ["name", "email"];
    options.filter= "";
    options.multiple=true;
    navigator.contacts.find(fields, this.onSuccess, this.onError, options);
    //console.log(options);
},
onSuccess : function(contacts){

    for(var i = 0; i < contacts.length; i++){
            console.log(i);
            console.log("Display email = " + contacts[i].emails[0].value);
        }  
    }
},
onError : function(e){
    console.log(e);
}

}

contactFxn.getContact();

这是我的日志控制台。

2012-11-09 16:48:22.564 测试 [9529:907] [日志] 0
2012-11-09 16:48:22.566 测试 [9529:907] [日志] 显示名称 = ssxxc
2012-11-09 16:48:22.568 测试 [9529:907] [日志] 1

我猜当联系人没有任何电子邮件值时,webview 会抛出 javascript 错误。
太糟糕了,我无法检查 xcode 中发生了什么类型的 javascript 错误。

我已经尝试过“if(contacts[i].emails[0] == null)”但没有成功。 webview 无论如何都会抛出错误
有人可以建议其他方法来解决这个问题吗?提前致谢。

最佳答案

onSuccess : function(contacts){

for(var i = 0; i < contacts.length; i++){
        console.log(i);
        if(contacts[i].emails){
            console.log("Display email = " + contacts[i].emails[0].value);
        }
    }  
}

只是愚蠢的错误。

我试图获取 contacts[i].emails[0].value 而 contacts 数组的某些元素

没有电子邮件值。上面的代码现在可以正常工作了

关于ios - phonegap) 检索 iphone 联系人电子邮件时发生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13304332/

相关文章:

ios - UIButton .setImage() 在 Swift 3 中不起作用

ios - 通知用户 App 更新

ios - 如何使用 Cordova 项目将设置正确添加到 iOS 应用程序?

cordova - 使用 LiveReload 在模拟器浏览器中测试 PhoneGap 应用

ios - 如何使用 $ref 和 $id 在 RestKit 中使用循环引用

ios - 我可以使用 XCode 中的 Settings Bundle 编辑器指定除“Settings”之外的 UI吗?

ios - 如何只向 UIImageView 添加右边框

node.js - cordova 项目的 npm 版本存在问题

cordova - ionic Cordova 建立失败

cordova - 电子邮件编辑器在 Android 上不起作用