设为首页 加入收藏

TOP

Android手机联系人数据库分析(二)
2014-11-24 01:45:44 来源: 作者: 【 】 浏览:2
Tags:Android 手机 联系人 数据库分析
}
remark.company = companyname;
Log.i(TAG, "company:" + companyname);
}while(c.moveToNext());
}
c.close(); c = null;
// 家庭住址信息
projection = new String[] { Data.DATA7,
Data.DATA10, Data.DATA4, Data.CONTACT_ID };
c = getContentResolver().query(
Data.CONTENT_URI, projection,
Data.MIMETYPE + "= and " + StructuredPostal.TYPE + "= " ,
new String[]{StructuredPostal.CONTENT_ITEM_TYPE, StructuredPostal.TYPE_HOME+""},
Data.CONTACT_ID + " asc");
if(c.moveToFirst()){
int data4 = c.getColumnIndex(Data.DATA4);
int data7 = c.getColumnIndex(Data.DATA7);
int data10 = c.getColumnIndex(Data.DATA10);
int id = c.getColumnIndex(Data.CONTACT_ID);
do{
String sData4 = c.getString(data4);
String sData7 = c.getString(data7);
String sData10 = c.getString(data10);
String cid = c.getString(id);
StringBuilder sb = new StringBuilder();
// 依次为国家、城市、街道
if(!TextUtils.isEmpty(sData10))
sb.append(sData10).append(";");
if(!TextUtils.isEmpty(sData7))
sb.append(sData7).append(";");
if(!TextUtils.isEmpty(sData4))
sb.append(sData4);
Item remark = list.get(cid);
if(remark == null){
remark = new Item();
list.put(cid, remark);
}
remark.address = sb.toString();
Log.i(TAG, "address:" + remark.address);
}while(c.moveToNext());
}
c.close();
// 家庭号码
projection = new String[] { Phone.NUMBER, Phone.CONTACT_ID};
c = getContentResolver().query(
Phone.CONTENT_URI, projection,
Phone.TYPE + "= ",
new String[]{Phone.TYPE_HOME + ""},
Phone.CONTACT_ID + " asc");
if(c.moveToFirst()){
int num = c.getColumnIndex(Phone.NUMBER);
int id = c.getColumnIndex(Phone.CONTACT_ID);
do{
String cid = c.getString(id);
String phone = c.getString(num);
Item remark = list.get(cid);
if(remark == null){
remark = new Item();
list.put(cid, remark);
}
remark.fnumber = phone;
Log.i(TAG, "family Phone:" + phone);
}while(c.moveToNext());
}
c.close();
// 备注
projection = new String[] { Data.DATA1, Data.CONTACT_ID};
c = getContentResolver().query(
Data.CONTENT_URI,
projection,
Data.MIMETYPE + "= ",
new String[]{Note.CONTENT_ITEM_TYPE},
Data.CONTACT_ID + " asc");
if(c.moveToFirst()){
int data1 = c.getColumnIndex(Data.DATA1);
int id = c.getColumnIndex(Data.CONTACT_ID);
do{
String cid = c.getString(id);
String note = c.getString(data1);
Item remark = list.get(cid);
if(remark == null){
remark = new Item();
list.put(cid, remark);
}
if(!TextUtils.isEmpty(note)){
remark.note = note;
Log.i(TAG, "note:" + note);
}
}while(c.moveToNext());
}
c.close();
// 对应的分组
ArrayList gid = new ArrayList(); // group Id
ArrayList gname = new ArrayList(); // group name
c = getContentResolver().query(Groups.CONTENT_URI,
new String[]{Groups.TITLE, Groups._ID}, null, null, null);
if(c.m
首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇80行Lua代码实现一个满足基本要求.. 下一篇Python非常cool的svg格式chart生..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: