android通讯录(test1)

package com.cn;

import android.app.Activity;
import android.content.ContentResolver;
import android.content.ContentUris;
import android.content.ContentValues;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.provider.ContactsContract.PhoneLookup;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class Mylist extends Activity{
	@Override
		//Bundle 类是用来activity之间通信的
	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		TextView tv = (TextView)this.findViewById(R.id.txt);
		String string ="";
		//获取ContentResolver对象
		final ContentResolver cr = getContentResolver();
		//取得电话本中的第一项光标
		Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
		//向下移动光标
		while(cursor.moveToNext()){
			//取得联系人姓名
			int nameColumnIndex = cursor.getColumnIndex(PhoneLookup.DISPLAY_NAME);
			String contant  = cursor.getString(nameColumnIndex);
			//取得号码
			String ContactId = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));
			Cursor phone  = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID+"="+ContactId, null, null);
			while(phone.moveToNext()){
				String PhoneNumber = phone.getString(phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
				string += (contant + ":" + PhoneNumber +"\n"); 
			}
		}
		cursor.close();
		//设置TextView显示内容
		tv.setText(string);
		//显示到屏幕
		Button button = (Button)this.findViewById(R.id.button);
		
		button.setOnClickListener(new View.OnClickListener() {
		//ContentResolver resolver = getContentResolver();	
			@Override
			public void onClick(View v) {
				ContentValues values = new ContentValues();
				Uri uri = Uri.parse("content://com.android.contacts/raw_contacts"); 
				//向raw_contacts表中插入一条数据,除了id之外,其他数据都为null,id自动生成
				long id = ContentUris.parseId(cr.insert(uri, values));
				//添加联系人姓名
				uri = Uri.parse("content://com.android.contacts/data"); 
				values.put("raw_contact_id", id);
				values.put("data2", "fms");
				values.put("mimetype", "vnd.android.cursor.item/name");
				cr.insert(uri, values);
				//添加联系人电话号码
				values.clear();//清空上次数据
				values.put("raw_contact_id", id);
				values.put("data1", "18600000000"); 
				values.put("data2", "2"); 
				values.put("mimetype", "vnd.android.cursor.item/phone_v2"); 
				cr.insert(uri, values);
			}
		});  
	
	}
}

 <uses-sdk android:minSdkVersion="8" />
    <uses-permission android:name="android.permission.READ_CONTACTS"/>
    <uses-permission android:name="android.permission.WRITE_CONTACTS"/>
     <uses-permission android:name="android.permission.WRITE_CALL_LOG"/>

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
  <TextView
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"
     android:id = "@+id/txt"
    />
 <Button
 	android:layout_width="wrap_content"
 	android:layout_height="wrap_content"
 	android:text="@string/button"
 	android:id="@+id/button"  
 	/>
</LinearLayout>


你可能感兴趣的:(android通讯录(test1))