Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android PhoneGap联系人未加载_Android_Cordova_Contacts - Fatal编程技术网

Android PhoneGap联系人未加载

Android PhoneGap联系人未加载,android,cordova,contacts,Android,Cordova,Contacts,我因为没有得到所有联系人而陷入困境。这是我的密码 <!DOCTYPE html> <html> <head> <title>Contact Example</title> <script type="text/javascript" charset="utf-8" src="cordova-2.9.0.js"></script> <!-- jQuery and jQuery Mobi

我因为没有得到所有联系人而陷入困境。这是我的密码

<!DOCTYPE html>
<html>
<head>
    <title>Contact Example</title>
    <script type="text/javascript" charset="utf-8" src="cordova-2.9.0.js"></script>
    <!-- jQuery and jQuery Mobile -->
    <script src="jquery-1.9.1.min.js"></script>
    <script src="jquery.mobile-1.3.1.min.js"></script>

    <script type="text/javascript" charset="utf-8">

        document.addEventListener("deviceready", getContactList, false);

        function getContactList() { 
            var contactList = new ContactFindOptions(); 
            contactList.filter=""; 
            contactList.multiple=true;
            var fields = ["*"];  //"*" will return all contact fields
            navigator.contacts.find(fields,  getContactFields, contactList );
        }

        function getContactFields(contacts) {
            for (var i=0; i<contacts.length; i++)
            {
               alert(contacts.length);
               alert("Name:" + contacts[i].displayName + "\n"+
                         "Birthday:"+ contacts[i].birthday)

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

         alert("loaded");
    }
    </script>

联系方式
文件。添加的EventListener(“deviceready”,获取联系人列表,错误);
函数getContactList(){
var contactList=new ContactFindOptions();
contactList.filter=“”;
contactList.multiple=true;
var fields=[“*”];/“*”将返回所有联系人字段
navigator.contacts.find(字段、getContactFields、contactList);
}
函数getContactFields(联系人){
对于(var i=0;i试试这个-

document.addEventListener("deviceready", onDeviceReady, false);
// Cordova is ready
function onDeviceReady() {
    var options = new ContactFindOptions();
    options.filter = "";          // empty search string returns all contacts
    options.multiple = true;      // return multiple results
    var fields = ["displayName", "name"]; // Optional If you want particular fields then use filters 
    navigator.contacts.find(fields, onSuccess, onError, options);
}

function onSuccess(contacts) {

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

function onError(contactError) {
    alert('Error in getting Phone Contacts');
}
document.addEventListener(“DeviceRady”,OnDevicerady,false);
//科尔多瓦准备好了
函数ondevicerady(){
var options=new ContactFindOptions();
options.filter=”“;//空搜索字符串返回所有联系人
options.multiple=true;//返回多个结果
var fields=[“displayName”,“name”];//如果需要特定字段,请使用筛选器,这是可选的
navigator.contacts.find(字段、onSuccess、onError、选项);
}
成功时的功能(联系人){
警报(contacts.length);
对于(变量i=0;i

按照

最后,我已经解决了我的问题。如果任何人需要列出他的电话号码列表,那么这个代码将是有益的。下面是源代码

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<title></title>

<link rel="stylesheet" href="jquery.mobile-1.3.1.min.css"> 
<!-- jQuery and jQuery Mobile -->
<script src="jquery-1.9.1.min.js"></script>
<script src="jquery.mobile-1.3.1.min.js"></script> 

<!-- for codova plugins --> 
<script type="text/javascript" charset="utf-8" src="cordova-2.9.0.js">  </script>     

<script type="text/javascript" charset="utf-8">

    document.addEventListener("deviceready", onDeviceReady, false); 
    function onDeviceReady() {
        var options = new ContactFindOptions();
        options.filter = "";           
        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++) 
        {  
            if (contacts[i].phoneNumbers)
            {
                for (var j=0; j<contacts[i].phoneNumbers.length; j++) 
                {  
                    $('#contactlist').append(
                    '<li>' + 
                        '<a href="tel:'+ contacts[i].phoneNumbers[j].value +'">' +

                            '<h4>'+ contacts[i].displayName +'</h4>' + 
                            '<h4>'+ contacts[i].phoneNumbers[j].value +'</h4>' + 
                        '</a>' +
                    '</li>'); 
                } 
            }   
        }
        $('#contactlist').listview('refresh');
    }

    function onError(contactError) {
        alert('Error in getting Phone Contacts');
    }

 </script>

</head>
<body> 
  <div id="contactListPage" data-role="page" >

<div data-role="header" data-position="fixed">
    <h1>Contacts</h1>
</div>

<div data-role="content">
     <ul id="contactlist" data-role="listview" data-filter="true"></ul>
</div>      

</div> 
 </body>
</html>

文件。添加的监听器(“deviceready”,OnDeviceraddy,false);
函数ondevicerady(){
var options=new ContactFindOptions();
options.filter=“”;
options.multiple=true;
变量字段=[“显示名称”、“电话号码”];
navigator.contacts.find(字段、onSuccess、onError、选项);
} 
函数onSuccess(contacts){
对于(变量i=0;i对于(var j=0;j@ImdadSarkar-如果你想要生日联系人或其他一些字段的联系人,你可以通过筛选将其分类并仅显示这些联系人。我以前使用过该代码。我无法确定我犯了什么错误。你的手机中有多少联系人,以及你使用该代码在这里获得了多少联系人?(警报中)我的onSuccess(contacts)未呼叫。我的手机中只有一个联系人,并且我注意到我的onSuccess方法未执行。