您的位置:首页 > 移动开发 > Android开发

android读取联系人信息(学习版)

2010-04-15 23:13 330 查看

android读取联系人信息(学习版)

文章分类:移动开发

package com.activity;

import android.app.Activity;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.provider.Contacts;
import android.provider.Contacts.People;
import android.widget.TextView;

public class Main extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView tv = (TextView) findViewById(R.id.TextView01);

String columns[] = new String[] { People._ID, People.NAME,
People.NUMBER, People.PRIMARY_EMAIL_ID,

People.PRIMARY_ORGANIZATION_ID, People.PRIMARY_PHONE_ID,
People.DISPLAY_NAME,

People.IM_ACCOUNT, People.IM_HANDLE, People.PHONETIC_NAME,
People.TYPE };

Uri mContacts = People.CONTENT_URI;
Cursor cur = managedQuery(mContacts, columns, // 要返回的数据字段
null, // WHERE子句
null, // WHERE 子句的参数
People.NAME // Order-by子句
);

if (cur.moveToFirst()) {
Cursor newcur = null;
do {
// 获取字段的值
String name = cur.getString(cur.getColumnIndex(People.NAME));
String phoneNo = cur.getString(cur
.getColumnIndex(People.NUMBER));
String peopleId = cur.getString(cur.getColumnIndex(People._ID));

String[] PROJECTION = new String[] {
Contacts.ContactMethods._ID,
Contacts.ContactMethods.KIND,
Contacts.ContactMethods.DATA };

newcur = managedQuery(Contacts.ContactMethods.CONTENT_URI,
PROJECTION, Contacts.ContactMethods.PERSON_ID + "=/'"
+ cur.getLong(cur.getColumnIndex(People._ID))
+ "/'", null, null);
startManagingCursor(newcur);

String email = "";

if (newcur.moveToFirst()) {
while (newcur.moveToNext()) {

email = email+ newcur.getString(newcur.getColumnIndex(Contacts.ContactMethods.DATA));
}
}

tv.setText("name = " + name + " phoneNo = " + phoneNo
+ "email = " + email);

if (email != null && !"".equals(email)
&& email.trim().length() != 0) {

// 此处可以取到联系人邮件
}

} while (cur.moveToNext());
if (newcur != null) {
newcur.close();// 用完得关闭吧
}
}

if (cur != null)
cur.close(); // 用完得关闭吧
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐