2014-01-27 25 views
-1

我正在开发像“WhatsApp的”对,我想从我的Android手机上我的内容(在页眉和页脚)显示联系人的应用程序,所以我能做到这一点的任务?的WhatsApp样的应用程序

我试过,但它不工作。

function displayContact1() { 
alert('Clicked'); 
var options = new ContactFindOptions(); 
    options.filter=""; 
    options.multiple=true; 
    var filter = [ "displayName", "phoneNumbers", "photos" ]; 
    navigator.contacts.find(filter, displayContact, onContactError, options); 
var myContacts = new Object(); 

    // Default image path for the profile image 
    var defaultImagePath = $("#defaultImagePath").attr('src'); 

    for (var i=0; i<contacts.length; i++) 
    { 

     if(contacts[i].phoneNumbers == null) 
     continue; 

     // Checks for the image 
     var img = contacts[i].photos != null ? contacts[i].photos[0].value : defaultImagePath; 

     if(contacts[i].phoneNumbers.length) 
     for (var j=0; j<contacts[i].phoneNumbers.length; j++) 
     { 
      var pNumber = contacts[i].phoneNumbers[j].value; 
      var name = contacts[i].displayName != null ? contacts[i].displayName: "No name"; 

      // To sort the names based on the starting letter 
      // Stores the names in that array 
      var index = name.substring(0,1).toUpperCase(); 

      if (typeof myContacts[index] == 'undefined') 
      { 
       myContacts[index] = new Array(); 
      } 

      // cuts the large names 
      if(name.length > 35) 
      { 
       name = name.substr(0,35)+"..."; 
      } 
      // Push every details into an array. 
      myContacts[index].push({"name":name, "pNumber": pNumber, "img": img}); 

     } 

    } 

     var arrayKeys = new Array(); 
     for (var key in myContacts) 
     { 
      arrayKeys.push(key); 
     } 

     // Sorts the array based on the key A, B , C etc 
     arrayKeys = arrayKeys.sort(); 

     for(i = 0 ; i < arrayKeys.length ; i++) 
     { 
      var records = myContacts[ arrayKeys[i] ]; 
      $("#contacts").append ("<li class='letter-head'>"+ arrayKeys[i]+"</li>"); 

     // Sort each names 
     records = records.sort(sortNames); 

      for(var r_key in records ) 
      { 



       $("#contacts").append ("<li><img src='"+ records[r_key].img+"' /> <span class='contact-name'>"+records[r_key].name + "</span><span class='contact-number'>" + records[r_key].pNumber + "</span></li>"); 
      } 

     } 


     hide_loader(); 
     $('.addressBook').effect("slide", {direction: "right"}, 500); 


} 

function sortNames(a, b) 
{ 
    return a.name.toLowerCase() > b.name.toLowerCase() ? 1 : -1; 
} 
+0

为什么它不工作? – nKn

回答

0

请在下一次询问之前查找Android开发者网站。 Google也可以在这里帮助。 有一个来自Google的“联系人管理”示例或THIS之一。

这里是你如何读取联系人数据:LINK

下面是如何创建一个自定义列表视图:LINK

下面是一个整体联系人列表中的教程:LINK

相关问题