1

我正在尝试在 PhoneGap“Cordova 1.6.1”中访问联系人的电话号码并向该号码发送消息。我一直在 Android 移动平台上测试该应用程序,并且可以使用此功能访问联系人的姓名:

    $('#contacts').append('<option value="'+contacts[i].name+'" >' + contacts[i].name.formatted + '</select>');

但是,当我输入:

     contacts[i].phoneNumbers.formatted 

输出未定义。

我遇到了什么问题?如何在 PhoneGap android 应用程序中正确访问联系人的电话号码。

4

3 回答 3

5

phoneNumbers 是一个数组,因此您需要对其进行索引。

for (var j=0; j<contacts[i].phoneNumbers.length; j++) {
     alert("Type: " + contacts[i].phoneNumbers[j].type + "\n" + 
           "Value: "  + contacts[i].phoneNumbers[j].value + "\n" + 
           "Preferred: "  + contacts[i].phoneNumbers[j].pref);
}

http://docs.phonegap.com/en/1.6.1/cordova_contacts_contacts.md.html#ContactField

于 2012-05-01T13:55:20.150 回答
4

检查你的 phoneNumbers 数组是否不为空

像这样的东西

if (contacts[i].phoneNumbers){
for (var j=0; j<contacts[i].phoneNumbers.length; j++) {
     alert(     " "  + contacts[i].phoneNumbers[j].value + "\n" + 
           );
}

}
于 2012-05-31T11:44:44.597 回答
0

您还可以使用https://github.com/dbaq/cordova-plugin-contacts-phone-numbers仅检索具有至少一个电话号码的联系人。

于 2014-11-20T21:02:20.900 回答