Cordova phoneNumbers在Android上始终为null

时间:2014-06-25 06:17:13

标签: android cordova null contacts phone-number

以下JavaScript函数有contacts[i].phoneNumbers null。

    var exportContactsToComidor = function() {
    if(confirm("Are you sure you want to continue?")) {
        $.mobile.loading("show");

        function onSuccess(contacts) {
            var str = '{"contacts":[';
            for (var i=0; i<contacts.length; i++) {
                str += '{';
                str +=      '"displayName": "'+contacts[i].displayName+'",';
                str +=      '"nickname": "'+contacts[i].nickname+'",';
                str +=      '"givenName": "'+contacts[i].name.givenName+'",';
                str +=      '"familyName": "'+contacts[i].name.familyName+'",';
                str +=      '"phoneNumbers": [';
                if(contacts[i].phoneNumbers != null) {
                for (var j=0; j<contacts[i].phoneNumbers.length; j++) {
                str +=          '{';
                str +=              '"type": "'+contacts[i].phoneNumbers[j].type+'",';
                str +=              '"type": "'+contacts[i].phoneNumbers[j].value+'"';
                str +=          '},';
                }
                str = str.substring(0,str.length-1);
                }
                str +=      '],';
                str +=      '"emails": [';
                if(contacts[i].emails != null) {
                for (var j=0; j<contacts[i].emails.length; j++) {
                str +=          '{';
                str +=              '"type": "'+contacts[i].emails[j].type+'",';
                str +=              '"type": "'+contacts[i].emails[j].value+'"';
                str +=          '},';
                }
                str = str.substring(0,str.length-1);
                str +=      ']';
                str += '},';
                }
            }
            str = str.substring(0,str.length-1);
            str += ']}';
            Contacts.uploadContactsToComidor(str);
        };

        function onError(contactError) {
            $.mobile.loading("hide");
            alert('Hmmm... something went wrong... Sorry!');
        };
        var options = new ContactFindOptions();
        options.filter="";
        options.multiple=true;
        //var filter = ["displayName", "nickname", "name", "emails", "phoneNumbers"];
        var filter = ["*"];
        navigator.contacts.find(filter, onSuccess, onError, options);
    }
}

我可以改变什么想法?

谢谢

0 个答案:

没有答案