模塊:contacts
Contacts模塊管理系統通訊錄,用於可對系統通訊錄進行增、刪、改、查等操作。通過plus.contacts獲取系統通訊錄管理對象。
對象:聯系人對象(屬性:電話,地址等)針對它可以進行修改刪除;
應用場景:查找聯系人,導入聯系人,通訊錄備份,通訊錄同步;
通訊錄對象:AddressBook
interface AddressBook { function Contact create(); function void find( contactFields, successCB, errorCB, findOptions ); }
AddressBook:里有個 create(); 創建方法;還有個 find() 方法;
find();方法里的contactFields 查找返回聯系人中需要包含的信息(查找的這個聯系人包含的那些字段,例如只想要聯系人的姓名和電話)這個是一個字符串數組;
finOptions:過濾條件:{logic:'or',field:'displayNam',value:'*王*'} 查找出來所有顯示名和昵稱有“王”的信息;
logic就是邏輯運算符,是“或”還是“與”的關系; or / and / not 它是json的對象數組;
獲取通訊錄對象:getAddressBook
plus.contacts.getAddressBook(type,succesCB,errorCB); 這個是查詢通訊錄的;
通訊錄屬性:type
id: 聯系人的id
displayName: 聯系人顯示的名字
name: 聯系人的名稱
nickname: 聯系人的昵稱
phoneNumbers: 數組,聯系人的電話
emails: 數組,聯系人的郵箱
addresses: 數組,聯系人的地址
ims: 數組,聯系人的即時通訊地址
organizations: 數組,聯系人所屬組織信息
birthday: 聯系人的生日
note: 聯系人的備注
photos: 數組,聯系人的頭像
categories: 數組,聯系人的組名
urls: 數組,聯系人的網址
示例:添加聯系人
mui.plusReady(function(){ var addressBookObj = null; // 保證我們的addressBookObj 對象是存在的 plus.contacts.getAddressBook(plus.contacts.ADDRESSBOOK_PHONE,function(addressBook){ addressBookObj = addressBook; // 添加聯系人 $("#btnAddContac").bind('tap',function(){ plus.contacts.getAddressBook(plus.contacts.ADDRESSBOOK_PHONE,function(addressBook){ var contact = addressBookObj.create(); contact.name = {givenName:'張三'}; contact.phoneNumbers = {type:"手機",value:"1388888888",preferred:true}; contact.save(); mui.alert('添加成功'); },function(){}); }); },function(){}); });
具體示例:添加聯系人,查找聯系人,刪除聯系人,修改聯系人
<header class="mui-bar mui-bar-nav"> <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a> <h1 class="mui-title">通訊錄管理</h1> </header> <div class="mui-content mui-content-padded"> <button type="button" id="btnAddContac" class="mui-btn mui-btn-blue mui-btn-block">添加聯系人</button> <button type="button" id="btnDelContact" class="mui-btn mui-btn-blue mui-btn-block">刪除聯系人</button> <button type="button" id="btnSearchContact" class="mui-btn mui-btn-blue mui-btn-block">查找聯系人</button> <button type="button" id="btnModifyContact" class="mui-btn mui-btn-blue mui-btn-block">修改聯系人</button> </div> <script src='http://libs.baidu.com/jquery/1.8.3/jquery.min.js'></script> <script src="js/mui.min.js"></script> <script type="text/javascript"> mui.plusReady(function(){ var addressBookObj = null; // 保證我們的addressBookObj 對象是存在的 plus.contacts.getAddressBook(plus.contacts.ADDRESSBOOK_PHONE,function(addressBook){ addressBookObj = addressBook; // 添加聯系人 $("#btnAddContac").bind('tap',function(){ plus.contacts.getAddressBook(plus.contacts.ADDRESSBOOK_PHONE,function(addressBook){ var contact = addressBookObj.create(); contact.name = {givenName:'張三'}; contact.phoneNumbers = {type:"手機",value:"1388888888",preferred:true}; contact.save(); mui.alert('添加成功'); },function(){}); }); // 查找聯系人 $("#btnModifyContact").bind('tap',function(){ addressBookObj.find("",function(contacs){ //alert(contacs); for(var i=0;i<contacs.length;++i){ alert(contacs[i].name.givenName); }; },function(e){ console.log(e.message); },{filter:[{logic:'and',field:'givenName',value:'*張*'}]}); }); // 修改聯系人 $("#btnModifyContact").bind('tap',function(){ addressBookObj.find("",function(contacs){ //alert(contacs); for(var i=0;i<contacs.length;++i){ contacs[i].name.givenName ="李四"; contacs[i].save(); }; mui.alert("修改成功"); },function(e){ console.log(e.message); },{filter:[{logic:'and',field:'givenName',value:'*張*'}]}); }); // 刪除聯系人 $("#btnDelContact").bind('tap',function(){ addressBookObj.find("",function(contacs){ //alert(contacs); for(var i=0;i<contacs.length;++i){ contacs[i].remove(); }; mui.alert("刪除成功"); },function(e){ console.log(e.message); },{filter:[{logic:'and',field:'givenName',value:'*李四*'}]}); }); },function(){}); }); </script>