简单的读取 存储联系人的DEMO~

来源:互联网 发布:小米路由器 数据分析 编辑:程序博客网 时间:2024/06/04 19:59

//读取联系人 

package com.mcnk.readcontect;


import android.app.Activity;
import android.content.ContentResolver;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;


/**
 * 
 * @author little_huang
 * @Describe  读取系统联系人信息
 *
 */
public class MainActivity extends Activity {


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}


public void click(View view) {


ContentResolver resolver = getContentResolver();
Uri uri = Uri.parse("content://com.android.contacts/raw_contacts");
Uri dataUri = Uri.parse("content://com.android.contacts/data");
Cursor cursor = resolver.query(uri, null, null, null, null);


while (cursor.moveToNext()) {
String id = cursor.getString(cursor.getColumnIndex("contact_id"));
Cursor dataCursor = resolver.query(dataUri, null, "raw_contact_id=?", new String[] { id }, null);
while (dataCursor.moveToNext()) {
String data1 = dataCursor.getString(dataCursor.getColumnIndex("data1"));
String mimetype = dataCursor.getString(dataCursor.getColumnIndex("mimetype"));
System.out.println(data1 + "  " + mimetype);
}
dataCursor.close();
System.out.println("---------------------");
}
cursor.close();
}
}



//存取联系人

package com.mcnk.writecontact;


import android.app.Activity;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;


public class MainActivity extends Activity {


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}


public void click(View view) {
// 获取电话本最后一条记录的ID 然后在raw_contacts表里新插入的一条联系人ID + 1


ContentResolver resolver = getContentResolver();
Uri uri = Uri.parse("content://com.android.contacts/raw_contacts");
Uri dataUri = Uri.parse("content://com.android.contacts/data");
ContentValues values = new ContentValues();
Cursor cursor = resolver.query(uri, new String[] { "_id" }, null, null, null);
if (cursor.moveToLast()) {
int id = cursor.getInt(0);
int newid = id + 1;
values.put("contact_id", newid);
resolver.insert(uri, values);


// 使用相同的raw_contacts_id向data表里面插入数据
ContentValues phonevalues = new ContentValues();
phonevalues.put("data1", "88888888");
phonevalues.put("mimetype", "vnd.android.cursor.item/phone_v2");
phonevalues.put("raw_contact_id", newid);
resolver.insert(dataUri, phonevalues);


ContentValues namevalues = new ContentValues();
namevalues.put("data1", "luoting");
namevalues.put("mimetype", "vnd.android.cursor.item/name");
namevalues.put("raw_contact_id", newid);
resolver.insert(dataUri, namevalues);


ContentValues emailvalues = new ContentValues();
emailvalues.put("data1", "little_huang@163.com");
emailvalues.put("mimetype", "vnd.android.cursor.item/email_v2");
emailvalues.put("raw_contact_id", newid);
resolver.insert(dataUri, emailvalues);
}
cursor.close();
Toast.makeText(this, "联系人保存成功", 0).show();
}
}


0 0
原创粉丝点击