摘自:http://blog.csdn.net/qiaoning13256/article/details/6889315
/**
* 获得收藏夹的联系人
*/
private void getKeepedContacts(){
Cursor cur = getContentResolver().query(
ContactsContract.Contacts.CONTENT_URI, null, ContactsContract.Contacts.STARRED + " = 1 " , null, null);
startManagingCursor(cur);
int num = cur.getCount();
System.out.println(num + "");
int count = 0;
while (cur.moveToNext()) {
count ++;
long id = cur.getLong(cur.getColumnIndex("_id"));
Cursor pcur = getContentResolver().query(
ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null,
ContactsContract.CommonDataKinds.Phone.CONTACT_ID + "="
+ Long.toString(id), null, null);
// 处理多个号码的情况
String phoneNumbers = "";
while (pcur.moveToNext()) {
String strPhoneNumber = pcur
.getString(pcur
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
phoneNumbers += strPhoneNumber + ":";
}
phoneNumbers += "\n";
pcur.close();
String name = cur.getString(cur.getColumnIndex("display_name"));
contactNameList.add(name);
contactNumList.add(phoneNumbers);
}
cur.close();
}
/**
* 添加到收藏夹
* @param _id
*/
@SuppressWarnings("deprecation")
private void addKeepedContacts(long _id){
ContentResolver contentResolver = ContactActivity.this.getContentResolver();
Cursor cusor = null;
@SuppressWarnings("deprecation")
String[] projection = new String[] { Contacts.People._ID, Contacts.People.NAME, Contacts.People.NUMBER };
cusor = contentResolver.query(Contacts.People.CONTENT_URI, projection, Contacts.People._ID + "=?", new String[] { _id + "" }, Contacts.People.NAME + " ASC");
cusor.moveToFirst();
ContentValues values = new ContentValues();
Uri uri = Uri.withAppendedPath(Contacts.People.CONTENT_URI, cusor.getString(cusor.getColumnIndex(Contacts.People._ID)));
// values.put(Contacts.People.NAME, newName);
values.put(Contacts.People.STARRED, 1);
// values.put(Contacts.Phones.NUMBER, newPhoneNum);
contentResolver.update(uri, values, null, null);
Toast.makeText(ContactActivity.this, ContactActivity.this.getResources().getString(R.string.add_succeed), Toast.LENGTH_SHORT).show();
}
/**
* 从收藏夹中移出
* @param _id
*/
@SuppressWarnings("deprecation")
private void removeKeepedContacts(long _id){
ContentResolver contentResolver = ContactActivity.this.getContentResolver();
Cursor cusor = null;
@SuppressWarnings("deprecation")
String[] projection = new String[] { Contacts.People._ID, Contacts.People.NAME, Contacts.People.NUMBER };
cusor = contentResolver.query(Contacts.People.CONTENT_URI, projection, Contacts.People._ID + "=?", new String[] { _id + "" }, Contacts.People.NAME + " ASC");
cusor.moveToFirst();
ContentValues values = new ContentValues();
Uri uri = Uri.withAppendedPath(Contacts.People.CONTENT_URI, cusor.getString(cusor.getColumnIndex(Contacts.People._ID)));
// values.put(Contacts.People.NAME, newName);
values.put(Contacts.People.STARRED, 0);
// values.put(Contacts.Phones.NUMBER, newPhoneNum);
contentResolver.update(uri, values, null, null);
new getKeepedContactsTask().execute((Void)null);
Toast.makeText(ContactActivity.this, ContactActivity.this.getResources().getString(R.string.remove_succeed), Toast.LENGTH_SHORT).show();
}
分享到:
相关推荐
一个android收藏夹应用的实现,简单易懂,希望能对大家有所帮助。
Android 获取系统联系人并发送短信demo
Android 获取通讯录联系人信息源码~~~~~~~~~~~~~~~~
android 联系人 SIM卡 最近联系人 通讯录 获取源代码
Android获取联系人列表Demo,麻烦的50个字。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
主要介绍了Android获取手机通讯录、sim卡联系人及调用拨号界面方法,本文分别给出实现代码实现获取通讯录和sim卡的联系人,以及权限配置和调用系统拨打电话的界面的实现代码,需要的朋友可以参考下
Android Studio 获取手机联系人并进行,发短信,打电话,增删“改”操作
Android 获取联系人 仿QQ通讯录
Android通讯录管理(获取联系人、通话记录、短信消息),需要的打包带走
Android如何获取手机联系人信息,本文为大家揭晓。 获取手机联系人信息步骤: 1、获取 ContentResolver ContentResolver resolver = getContentResolver(); 2、resolver.query(*)查询信息 查询手机联系人的URI...
android 获取手机联系人的工具类 源码 包括 手机SIM卡联系人 手机通讯录联系人
android系统获取联系人生日相关的信息,有需要的可以看看
实现了调用手机自带通讯录获取联系人功能,可以自由选择联系人
兼容各款机型,可直接按照我的博文步骤进行操作 地址:https://blog.csdn.net/qq_20451879/article/details/90718513
android 获取手机通讯录联系人信息,点击直接拨打电话源码 关注博客http://himici.com/
Android 读取联系人信息
一个练习的小例子,获取通讯录中所有联系人的工具类,存储在Map中,Map中key为手机号,value为联系人的姓名。还提供了一个根据手机号查询该手机号的联系人姓名的功能。 注:同一联系人可以存储多个手机号,但是同一...
android应用,读取手机联系人等信息。ContentResolver获取手机联系人、电话
android开发应用,获取联系人名单,用于实际开发中操作
本项目介绍的是Android中的联系人的项目实战,主要是联系人的获取,新增 ,编辑,删除等功能,主要是练习Android四大组件之ContentProvider的使用和学习。