查找手机中联系人信息及对应的ID号
1.MainActivity
public class MainActivity extends Activity {
public static final String TAG = "MainActivity";
private String[] columns = {Contacts._ID, Contacts.DISPLAY_NAME, Contacts.PHONETIC_NAME};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView tv = (TextView) findViewById(R.id.result);
tv.setText(getQueryData());
}
private String getQueryData() {
StringBuilder sb = new StringBuilder();
ContentResolver resolver = getContentResolver();
// Cursor cursor = resolver.query(Contacts.CONTENT_URI, columns, null, null, null);
Uri uuu = Uri.parse("content://com.android.contacts/contacts");
Cursor cursor = resolver.query(uuu, columns, null, null, null);
int idIndex = cursor.getColumnIndex(columns[0]);
int displayNameIndex = cursor.getColumnIndex(columns[1]);
int test = cursor.getColumnIndex(columns[2]);
Log.i(TAG, cursor.toString());
for (cursor.moveToFirst(); !cursor.isAfterLast();cursor.moveToNext()) {
int id = cursor.getInt(idIndex);
String displayName = cursor.getString(displayNameIndex);
String number;
if (cursor.getString(test) != null) {
number = cursor.getString(test);
} else {
number = "0000";
}
Log.i(TAG, "------------------");
Log.i(TAG, String.valueOf(idIndex));//0 , 第0列
Log.i(TAG, String.valueOf(id));//数字串
Log.i(TAG, String.valueOf(displayNameIndex));//1 , 第一列
Log.i(TAG, displayName);//姓名
Log.i(TAG, "++++++++++++++++++");
sb.append(id + ": " + displayName + " " + number + "\n");
}
cursor.close();
return sb.toString();
}
}