|
注明一下。如果没有特殊说明,整个前端框架基于 jqmobi2.1 版本
项目需求添加一些信息到通讯录中。今天来讲一下
- //首先是cmd下进入项目目录拉
-
- cd workspace/idocotr
-
- //然后添加相关的phonegap插件
- cordova plugin add org.apache.cordova.contacts
-
- //然后记得build更新一下文件
- cordova build
复制代码
- <!-- 默认引入jqmobi js库或者类似的库 -->
- <body>
- <p class="name">王大锤</p>
- <p class="nikename">锤锤</p>
- <p class="tel">10086</p>
- <p class="address">广州</p>
- <p class="notes">万万没想到</p>
-
- <input type="button" class="pg_add_contacts" />
- </body>
复制代码- function pg_add_contacts(){
-
- $(".pg_add_contacts").bind("tap",function(){
-
- //获取对应的联系人的值
- //我这里直接从页面获取。也可以通过jsonp或者ajax获取都行
- var ctt_name = $(".name").html();
- var ctt_nikename = $(".nikename").html();
- var ctt_tel = $(".tel").html();
- var ctt_address = $(".address").html();
- var ctt_notes = $(".notes").html()
-
- //创建一个对象
- var contact = navigator.contacts.create();
-
- //姓名
- contact.displayName = ctt_name;
-
- //昵称
- contact.nickname = ctt_nikename;
-
- //备注
- contact.note = ctt_notes;
-
- //地址
- contact.addresses = [{
- "type":"home",
- "pref":false,
- "formatted":ctt_address //地址变量
- }]
-
- //电话
- var phoneNumbers = [];
- phoneNumbers[0] = new ContactField('work', ctt_tel, false);
- contact.phoneNumbers = phoneNumbers;
-
- //保存
- contact.save(add_contact_succ,add_contact_err);
- })
- }
-
- document.addEventListener("deviceready", pg_add_contacts, false);
-
- //添加成功的函数
- function add_contact_succ(contact) {
- $.ui.popup( "添加成功" );
- };
- //添加失败的函数
- function add_contact_err(contactError) {
- $.ui.popup( "添加失败" )
- };
复制代码
记得最后再 cordova build 一下
这里说一下。bind方法如果是写在 data-load方法中的话会造成多次绑定,添加联系人的时候会添加多次。需要在data-unload的时候unbind一下。
本文来自:http://www.qdkf.net/index.php/archives/19/
感谢:por 的分享
|
|