2013-02-12 45 views
9

電話番号を持つ連絡先のみを表示する方法はありますか?PhoneGap - 電話番号の連絡先を表示する

今私はすべての連絡先を取得しているし、各を介してループし、自分の電話番号を見つけるが、contactFindOptionsオブジェクトにパラメータを渡す方法があるかどうか疑問に思っていたので、電話番号?私はコルドバのAPIは、フィルタリングが必要なものを達成することはできません信じて

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); 

       } 
      } 
    } 
} 

答えて

0

これは次のように私のコードは、現在どのように見えるかです。ここではそのドキュメントから

http://docs.phonegap.com/en/2.5.0/cordova_contacts_contacts.md.html#contacts.find

それは言う:

連絡先データベースを照会するときcontactFindOptions.filter文字列が検索フィルタとして使用することができます。提供されている場合、contactFieldsパラメーターで指定された各フィールドに大文字小文字を区別しない部分一致が適用されます。指定したいずれかのフィールドとの比較で一致するものが見つかった場合は、その連絡先が返されます。

これを使用して、電話番号フィールドにnull以外を判断できるとは思われません。

2

はい、hasPhoneNumberフィルタオプションを使用できます。

  var contactFindOptions = new ContactFindOptions(); 
      contactFindOptions.filter = ""; 
      contactFindOptions.multiple = true; 
      contactFindOptions.hasPhoneNumber = true; 
      navigator.contacts.find(
        ["phoneNumbers"], 
        function (contacts) { 
         // you will get contacts in this callback success function 
        }, 
        function (e) { 
         if (e.code === ContactError.NOT_SUPPORTED_ERROR) { 
          console.log("Searching for contacts is not supported."); 
         } else { 
          console.log("Search failed: error " + e.code); 
         } 
        }, 
        contactFindOptions); 

注: hasPhoneNumberは(アンドロイドのみ):のみ通知電話番号に連絡先を返すように検索をフィルタし、次のように コードスニペットがあります。 (ブール値)(デフォルト:false)

関連する問題