`
longgangbai
  • 浏览: 7340941 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多

      没事开发一个phonegap通讯录使用:

js如下:

//调用手机通讯录的方法
function queryContactList() 
{ 
     var options = new ContactFindOptions(); 
     var fields=["id","name","displayName", "phoneNumbers","emails"];
     //options.filter=getParameterByName("id"); 
     options.multiple=true ; 
     //调用phonegap的手机通讯信息的方法
     navigator.contacts.find(fields,showContact, onError, options); 
} 
//调用失败的通知
function onError(fail) 
{ 
          alert(fail); 
} 
 //调用成功处理方式
 function showContact(contacts) 
 { 
     var sb=new StringBuffer();
     sb.append("<ul data-role='listview' data-inset='true' data-icon='plus' >");
     var temp=new StringBuffer();
     for (var i=0;i<contacts.length;i++) 
     { 
         var diaplayName=contacts[i].displayName;
         if(diaplayName==''||diaplayName==null){
             diaplayName=contacts[i].name;
             if(diaplayName==''||diaplayName==null){
                 diaplayName=contacts[i].nickname;
                 if(diaplayName==''||diaplayName==null){
                     diaplayName=contacts[i].givenName+" "+contacts[i].familyName;
                 }
             }
         }
         var phoneNumber=contacts[i].phoneNumbers[0].value;
         temp.append("<li><div class='ui-grid-a'><div class='ui-block-a'>"+contacts[i].displayName+"</div><div class='ui-block-b'>"+phoneNumber+"</div></div></li>");
     } 
     //当前通讯没有信息的提示信息
     if(temp.toString("")==''){
         temp.append("<li>通讯录没有通讯信息!</li>");
     }
     sb.append(temp.toString(""));
     sb.append("</ul>");
     $("#telContactList").html(sb.toString(""));
     $("div[data-role=content] ul").listview(); 
} 

 

utils.js代码如下:

//模仿java的StringBuffer的javascript的实现
function StringBuffer() { 
	this._strs = new Array; 
} 
StringBuffer.prototype.append =function(str) { 
	this._strs.push(str); 
}; 
StringBuffer.prototype.toString = function(separate) { 
	return this._strs.join(separate); 
}; 

 html页面如下:

<!DOCTYPE html> 
<html> 
	<head> 
	<title>通讯录信息</title> 
   	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<meta http-equiv="content-type" content="text/html; charset=UTF-8">
	<meta name="format-detection" content="telephone=no"/>
	<script  src="jquery.mobile/jquery-1.6.4.min"></script>
	<script src="jquery.mobile/jquery.mobile-1.0.1.js"></script>
	<link rel="stylesheet" href="jquery.mobile/jquery.mobile-1.0.1.css" />
	<script src="phonegap-1.4.1.js"></script>
	<script src="jquery.mobile/contact.js"></script>
	<script src="jquery.mobile/utils.js"></script>
	<script>
	  document.addEventListener("deviceready", onDeviceReady, false);
	  function onDeviceReady() {
	      queryContactList();
	  }
	</script>
</head> 
 <body>
			<div  data-role="page" id="mainTrainIndex" data-theme="b"   >
			         <!-- header -->
					<div data-role="header"   data-position="fixed"  > 
						<h1>通讯录信息</h1>
					</div>
					<!-- content -->
					<div data-role="content"  data-theme="b"  >
					     <div  id="telContactList"></div>
			        </div>
		</div>	
	</body>
</html>
 
分享到:
评论
2 楼 longgangbai 2013-05-27  
lhtzjy 写道
请问楼主,为什么我的通讯录出不来呢?我粘贴复制以后,手机通讯录显示不出来

检查你的几个js脚本是否版本是否支持,尤其是phonegap那个,一直的修改所以可能不同版本采用的不一样哦
1 楼 lhtzjy 2013-05-27  
请问楼主,为什么我的通讯录出不来呢?我粘贴复制以后,手机通讯录显示不出来

相关推荐

    PhoneGap,API帮助文档翻译整理6-Contacts(通讯录)

    以下是一个使用Contacts API创建联系人并打印性别的简单示例: ```html &lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"&gt; &lt;title&gt;Contact Example ...

    PhoneGap,API帮助文档翻译整理6-Contacts(通讯录).pdf

    在本文中,我们将围绕PhoneGap框架的API文档进行探讨,特别是在处理移动设备上的通讯录(Contacts)数据时所使用的一系列方法。根据提供的文件信息,我们将会详细解释如何使用PhoneGap API来创建和查找通讯录中的...

    phonegap 遍历联系人

    总结来说,“phonegap 遍历联系人”这个主题涵盖的内容包括:PhoneGap的跨平台特性、使用Cordova插件机制、配置`config.xml`、JavaScript API的使用、处理回调函数以及Android平台的权限管理。理解并掌握这些知识点...

    phonegap学习资料

    - **跨域安全策略**:不适用于 PhoneGap 应用程序,这意味着开发者可以直接从外部服务器获取数据,例如使用 jQuery 的 `$.getJSON()` 方法调用 Twitter 的 API。 #### 五、PhoneGap 相关库与插件 为了进一步增强 ...

    jqm+ phonegap编写的联系人

    关于标签所提及的“contacts”,这是PhoneGap的Contact API,它允许应用访问和操作用户的联系人数据。例如,`navigator.contacts.find`方法可以用来查询联系人,而`navigator.contacts.create`和`navigator.contacts...

    使用phonegap创建联系人的实现方法

    // 在这里可以使用PhoneGap的API } ``` 创建联系人使用的是 `navigator.contacts.create()` 方法,它会返回一个新的Contact对象实例。然后我们可以设置联系人的属性,如名字、性别和注释: ```javascript ...

    PhoneGap操作数据库实例

    首先,PhoneGap应用中的数据库操作依赖于SQLite JavaScript API,它是一个轻量级的关系型数据库,适合存储大量结构化数据。要开始操作数据库,我们需要在JavaScript代码中创建一个数据库实例。这通常通过`window....

    iOS phonegap/Cordova实现打开通讯录添加联系人插件

    PhoneGap/Cordova的核心理念是通过WebView将Web应用与设备的原生功能相结合,提供了丰富的插件系统来访问如摄像头、GPS、存储等设备API。在本项目中,我们关注的是“通讯录”这一特定功能,它涉及到如何集成和使用...

    phonegap-contacts:联系人

    在提供的 "phonegap-contacts-master" 压缩包中,可能包含了示例代码、教程文档或者其他资源,帮助开发者更好地理解和使用 PhoneGap 的联系人 API。通过学习和实践这些资源,你可以深入了解如何在实际项目中集成和...

    PhoneGapContactsAPI:使用 PhoneGap 获取电话联系人

    要使用 PhoneGapContactsAPI,首先需要在项目中引入 PhoneGap 和 Contacts API 的相关依赖。通常,这可以通过在 `config.xml` 文件中添加相应的插件声明来完成。例如,对于 Cordova/PhoneGap CLI: ```xml ``` 接...

    ahmad-phonegap-test2:电话间隙测试

    2. **Contact API**:PhoneGap的联系人API是其核心功能之一,它提供了访问和操作设备联系人数据库的能力。开发者可以创建、读取、更新和删除联系人,还可以搜索特定的联系人信息。 3. **JavaScript**:作为PhoneGap...

    使用phonegap查找联系人的实现方法

    PhoneGap 提供了一组设备相关的 API,使得开发者能够访问手机的各种功能,如摄像头、GPS、联系人等。本篇文章将详细介绍如何使用 PhoneGap 查找设备上的联系人。 在 PhoneGap 中,我们可以使用 `navigator.contacts...

Global site tag (gtag.js) - Google Analytics