Ti的安装呢很多博客上都有我在这儿就不叙述了,Titanium没有中文的API所以对英语不好的程序猿来说有点儿费劲儿.....

我做的一个简单的基于android平台的demo ,同步手机本地的联系人的姓名和手机号到远程服务器的数据库....在这儿我贴出几个知识点以供参考借鉴.....

 

  1. 首先通过 Contacts 得到手机本地的联系人信息,然后进行循环遍历。
 
  
  1. var contacts = Ti.Contacts.getAllPeople(); 
我在这儿是循环遍历到TableView中,
 
  
  1.  
  2. function randomInt(max){ 
  3.   return Math.floor(Math.random() * max) + 1; 
  4.  
  5. var IMG_BASE = 'https://github.com/appcelerator/titanium_mobile/raw/master/demos/KitchenSink/Resources/p_w_picpaths/'
  6. var defaultFontSize = Ti.Platform.name === 'android' ? 16 : 14; 
  7.  
  8. var tableData = []; 
  9. for(var i=0, length=contacts.length;i<length;i++){ 
  10.     contact = contacts[i]; 
  11.   var row = Ti.UI.createTableViewRow({ 
  12.     className:'forumEvent',
  13.     selectedBackgroundColor:'white'
  14.     rowIndex:i,
  15.     height:75 
  16.   }); 
  17.  
  18.   var p_w_picpathAvatar = Ti.UI.createImageView({ 
  19.     p_w_picpath: IMG_BASE + 'custom_tableview/user.png'
  20.     left:10, top:5, 
  21.     width:50, height:50 
  22.   }); 
  23.   row.add(p_w_picpathAvatar);  
  24.  
  25.   var labelUserName = Ti.UI.createLabel({ 
  26.     color:'#576996'
  27.     font:{fontFamily:'Arial', fontSize:defaultFontSize+6, fontWeight:'bold'}, 
  28.     text:contact.fullName, 
  29.     left:70, top: 6, 
  30.     width:200, height: 30 
  31.   }); 
  32.   row.add(labelUserName); 
  33.  
  34.   var labelDetails = Ti.UI.createLabel({ 
  35.     color:'#222'
  36.     font:{fontFamily:'Arial', fontSize:defaultFontSize+2, fontWeight:'normal'}, 
  37.     text:''+contact.phone['home'], 
  38.     left:70, top:44, 
  39.     width:360 
  40.   }); 
  41.   row.add(labelDetails); 
  42.   tableData.push(row); 
  43.  
  44. var tableView = Ti.UI.createTableView({ 
  45.   backgroundColor:'white'
  46.   data:tableData 
  47. }); 
监听单元格的点击事件,判断哪一个联系人被选中
 
  
  1. tableView.addEventListener('click',function(evento){ 
  2.     evento.row.hasCheck=evento.row.hasCheck==true?false:true;//点击后显示已选的提示勾 
  3. }); 
 
  
  1. var linkman=""
  2.     //alert(tableData.length); 
  3.     for (var j=0,length=tableData.length;j<length;j++){ 
  4.         if(tableData[j].getHasCheck()===true){ 
  5.             //console.log(labelUserName[j]['text']); 
  6.             linkman += tableData[j]['children'][1]['text']+":"+tableData[j]['children'][2]['text']+","
  7.             //console.log(linkman); 
  8.         } 
  9.     } 
同步联系人,这里用到了 HTTPClient。 首先创建一个HTTPClient对象,然后打开并发送请求
 
  
  1. var client = Ti.Network.createHTTPClient({});//建立HTTPClient对象 
  2. client.open("POST或者GET","php地址"); 
  3.     var params ={ 
  4.         linkman:linkman  //参数名 
  5.     }; 
  6.     client.send(params); 

最后通过 this.responseText得到返回值