保存联系人phonegap时出错代码0

时间:2014-04-18 12:09:47

标签: cordova

我正在尝试使用phonegap(2.9.0)将联系人保存到Android设备的联系人列表中, 这是我的代码

function saveContactData() {
    var contact;
    contact = navigator.contacts.create();
    var tContactName = new ContactName();
    contact.displayName = $("#saveContName").val();
    tContactName.givenName = $("#saveContLName").val();
    contact.name = tContactName;

    var tPhoneNumbers = [];
    tPhoneNumbers[0] = new ContactField('Office', $("#saveContOffNo").val(), true);
    tPhoneNumbers[1] = new ContactField('Mobile', $("#saveContMobNo").val(), false);
    contact.phoneNumbers = tPhoneNumbers;

    var temails = [];
    temails[0] = new ContactField('Office', $("#saveContEmail").val(), true);
    contact.emails = temails;

    var torgs = [];
    torgs[0] = new ContactOrganization();
    torgs[0].name = $("#saveContComp").val();
    contact.organizations = torgs;

//  console.log(JSON.stringify(contact));

    contact.save(addContsuccess, addContError);

    function addContsuccess(contSuccess){
        navigator.notification.alert('Saved sucessfully', function() {
                            }, 'Title');    
    }
    function addContError(contError) {
                    navigator.notification.alert(
                    'Error contact save: ' + contError.code, function() {
                    }, 'Title');
                }
}

我点击某个按钮调用此功能,设置所有其他配置(Manifest)。但有时它会抛出“错误代码:0”,即使保存了联系人。很少有博客说(点击here!),因为没有配置帐户。但是,在我的模拟器中没有配置帐户,它可以在大多数情况下完美保存而不会出现任何错误。但是在设备中,即使配置了帐户,相同的代码也会给出错误:0。有谁知道错误代码是什么:0指的是。有人可以告诉我这里我缺少的东西吗?在谢谢你:)

2 个答案:

答案 0 :(得分:1)

错误代码0表示"未知错误"。我目前正在处理类似的事情。出于某种原因,它只在我的一个Android设备(星系标签3)上执行此操作,但我尝试过的其他设备(galaxy s3,galaxy s4)完美无误地运行。 ios版本没有错误。我确实遇到了一个问题,ios给了我一个权限错误(错误20),但是我通过编辑限制在那个特定的iPhone上解决了这个问题。如果有类似的东西可以用Android进行,那么这就好了吗?

答案 1 :(得分:0)

当我尝试将更多号码保存到一个联系人时出现此错误。 "更"在我的情况下是500.事实证明这个数字在Android版本之间有所不同。