/**
* 根据电话号码取得联系人姓名
*/
public static String getContactNameByPhoneNumber(Context context, String address) {
String[] projection = { ContactsContract.PhoneLookup.DISPLAY_NAME,
ContactsContract.CommonDataKinds.Phone.NUMBER };

// 将自己添加到 msPeers 中
Cursor cursor = context.getContentResolver().query(
ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
projection, // Which columns to return.
ContactsContract.CommonDataKinds.Phone.NUMBER + " = '"
+ address + "'", // WHERE clause.
null, // WHERE clause value substitution
null); // Sort order.

if (cursor == null) {
Log.d(TAG, "getPeople null");
return null;
}
for (int i = 0; i < cursor.getCount(); i++) {
cursor.moveToPosition(i);

// 取得联系人名字
int nameFieldColumnIndex = cursor
.getColumnIndex(ContactsContract.PhoneLookup.DISPLAY_NAME);
String name = cursor.getString(nameFieldColumnIndex);
return name;
}
return null;
}

/**
* 获取所有联系人内容
* @param context
* @param address
* @return
*/
public static String getContacts(Context context) {
StringBuilder sb = new StringBuilder();

ContentResolver cr = context.getContentResolver();
Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI, null,
null, null, null);

if (cursor.moveToFirst()) {
do {
String contactId = cursor.getString(cursor
.getColumnIndex(ContactsContract.Contacts._ID));
String name = cursor
.getString(cursor
.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
//第一条不用换行
if(sb.length() == 0){
sb.append(name);
}else{
sb.append("\n" + name);
}

Cursor phones = cr.query(
ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID
+ " = " + contactId, null, null);
while (phones.moveToNext()) {
String phoneNumber = phones
.getString(phones
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
// 添加Phone的信息
sb.append("\t").append(phoneNumber);

}
phones.close();

} while (cursor.moveToNext());
}
cursor.close();

return sb.toString();


转载自:http://www.cnblogs.com/zdz8207/archive/2012/11/09/2762893.html

更多相关文章

  1. Android(安卓)Activity界面切换添加动画特效
  2. "Failed to fetch URL https://dl-ssl.google.com/android/repos
  3. Android(安卓)流式布局FlowLayout(搜索历史),多布局、删除、添加
  4. Android(安卓)SDK Manager无法更新的解决
  5. Android(安卓)Activity界面切换添加动画特效
  6. Android实现下载文件功能的方法
  7. [APP] Android(安卓)开发笔记 006-使用短信验证SDK进行短信验证
  8. 修复Android(安卓)App在开机后入口类被启动两次的bug
  9. Android(安卓)实现View中添加子元素的动态效果

随机推荐

  1. 还在一行一行的写html,感受痛苦吧
  2. springboot|springboot集成redis缓存
  3. <Oracle优化新常态> 第十一章 WHO-IT的等
  4. 2021年激活码激活PhpStorm全教程
  5. 我的第34个代码
  6. 初次撩MYCAT小姐姐
  7. 字符型验证码识别
  8. 前端开发使用工具 gulp
  9. 机器学习开篇小菜
  10. MYCAT的初恋