PhoneGap中文网

标题: phonegap 3.5 添加到通讯录功能源码 [打印本页]

作者: admin    时间: 2014-6-23 22:13
标题: phonegap 3.5 添加到通讯录功能源码
注明一下。如果没有特殊说明,整个前端框架基于 jqmobi2.1 版本
项目需求添加一些信息到通讯录中。今天来讲一下

  1. //首先是cmd下进入项目目录拉

  2. cd workspace/idocotr

  3. //然后添加相关的phonegap插件
  4. cordova plugin add org.apache.cordova.contacts

  5. //然后记得build更新一下文件
  6. cordova build
复制代码

  1. <!-- 默认引入jqmobi js库或者类似的库 -->
  2. <body>
  3.     <p class="name">王大锤</p>
  4.     <p class="nikename">锤锤</p>
  5.     <p class="tel">10086</p>
  6.     <p class="address">广州</p>
  7.     <p class="notes">万万没想到</p>
  8.      
  9.     <input type="button" class="pg_add_contacts" />
  10. </body>
复制代码
  1. function pg_add_contacts(){
  2.      
  3.         $(".pg_add_contacts").bind("tap",function(){
  4.             
  5.             //获取对应的联系人的值
  6.             //我这里直接从页面获取。也可以通过jsonp或者ajax获取都行
  7.             var ctt_name = $(".name").html();
  8.             var ctt_nikename = $(".nikename").html();
  9.             var ctt_tel = $(".tel").html();
  10.             var ctt_address = $(".address").html();
  11.             var ctt_notes = $(".notes").html()
  12.             
  13.             //创建一个对象
  14.             var contact = navigator.contacts.create();
  15.             
  16.             //姓名
  17.             contact.displayName = ctt_name;
  18.             
  19.             //昵称
  20.             contact.nickname = ctt_nikename;
  21.             
  22.             //备注
  23.             contact.note = ctt_notes;
  24.             
  25.             //地址
  26.             contact.addresses = [{
  27.                 "type":"home",
  28.                 "pref":false,
  29.                 "formatted":ctt_address //地址变量
  30.             }]
  31.             
  32.             //电话
  33.             var phoneNumbers = [];
  34.             phoneNumbers[0] = new ContactField('work', ctt_tel, false);
  35.             contact.phoneNumbers = phoneNumbers;

  36.             //保存
  37.             contact.save(add_contact_succ,add_contact_err);
  38.         })
  39.     }
  40.      
  41.     document.addEventListener("deviceready", pg_add_contacts, false);

  42. //添加成功的函数  
  43. function add_contact_succ(contact) {
  44.     $.ui.popup( "添加成功" );
  45. };
  46. //添加失败的函数
  47. function add_contact_err(contactError) {
  48.     $.ui.popup( "添加失败" )
  49. };
复制代码

记得最后再 cordova build 一下

这里说一下。bind方法如果是写在  data-load方法中的话会造成多次绑定,添加联系人的时候会添加多次。需要在data-unload的时候unbind一下。


本文来自:http://www.qdkf.net/index.php/archives/19/  

感谢:por 的分享








作者: windtony    时间: 2014-7-14 18:06
感觉很麻烦,免费都要编译!不过对于没命令行基础的多打打还是挺好的!
作者: 阿哲85873    时间: 2015-5-1 13:11
html5 是趋势
作者: 阿哲85873    时间: 2015-5-1 21:49
很不错,不错,学习学习。跨平台得顶起
作者: super117    时间: 2015-5-1 22:15
未来属于html5 phonegap 微信 wap全部搞定
作者: adophper    时间: 2015-5-2 09:34
人不错,学习学习 感觉phonegap+html越来越火了。
作者: woerwin    时间: 2015-5-2 09:40
非常好 感谢 开始学习html5 app开发了




欢迎光临 PhoneGap中文网 (http://bbs.phonegap100.com/) Powered by Discuz! X3.2