代码如下:
public class ActivityMain2 extends Activity {
private Button btn;
private static final String[] PHONE_PROJECTION = new String[]{Phone.DISPLAY_NAME,Phone.NUMBER,Photo.PHOTO_ID,Phone.CONTACT_ID};
private String str;
private String columns[] = new String[]{People._ID,People.NAME,People.NUMBER,People.PRIMARY_EMAIL_ID};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main1);
btn = (Button) findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// method2();
// Intent i= new Intent();
// i.setAction(Intent.ACTION_GET_CONTENT);
// i.setData(Contacts.People.CONTENT_URI);
// i.setType("vnd.android.cursor.item/phone");
// startActivityForResult(i,1);
Intent intent = new Intent();
intent.setAction(Intent.ACTION_PICK);
intent.setData(ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intent,1);
// Intent sendIntent = new Intent(Intent.ACTION_SENDTO, Uri.parse("sms://"));
// //sendIntent.putExtra("address", "123456789");
// sendIntent.putExtra("sms_body", "foo bar");
// startActivity(sendIntent);
// method3();
// Uri mContacts = People.CONTENT_URI;
// Cursor cursor = managedQuery(mContacts, columns, null, null, People.NAME);
//
// if(cursor.moveToFirst()){
// String name = cursor.getString(cursor.getColumnIndex(People.NAME));
// String phoneNumber = cursor.getString(cursor.getColumnIndex(People.NUMBER));
// System.out.println("name :"+name);
// System.out.println("number :"+phoneNumber);
// }
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
Cursor cursor = null;
System.out.println("resultCode: "+resultCode);
System.out.println("requestCode: "+requestCode);
if(data != null){
System.out.println(" is not null.......");
}
if(requestCode == 1){
if(data != null){
cursor = getContentResolver().query(data.getData(), null, null, null,null);
if(cursor != null){
cursor.moveToFirst();
for(int i=0;i<cursor.getColumnCount();i++){
String name = cursor.getColumnName(i);
String result = cursor.getString(i);
if("number".equalsIgnoreCase(name)){
System.out.println("number.....:"+result);
}
if("name".equalsIgnoreCase(name)){
System.out.println("name.......:"+name);
}
}
}
cursor.close();
}
}
}
在AndroidManifest.xml中加入以下权限
<uses-permission android:name="android.permission.READ_CONTACTS" />
ok 搞定!