我想讓我的應用程序從Android Phone的通訊錄中獲取值。如何從Android的通訊錄中獲取註釋值
我試過People,ContactContracts.Data
,ContactContracts.Contact.Data
和 ContactsContract.CommonDataKinds
從電話本中讀取NOTE值的值。 但無法取得成功。請幫助我。
我想讓我的應用程序從Android Phone的通訊錄中獲取值。如何從Android的通訊錄中獲取註釋值
我試過People,ContactContracts.Data
,ContactContracts.Contact.Data
和 ContactsContract.CommonDataKinds
從電話本中讀取NOTE值的值。 但無法取得成功。請幫助我。
使用以下代碼從聯繫人獲取備註值。
Cursor cursor = getContentResolver().query(
ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
cursor.moveToFirst();
for (int i=0; i<cursor.getCount(); i++){
System.out.println("Hello");
String contactId = cursor.getString(
cursor.getColumnIndex(ContactsContract.Contacts._ID));
String note = null;
String[] columns = new String[] { ContactsContract.CommonDataKinds.Note.NOTE };
String where = ContactsContract.Data.RAW_CONTACT_ID + " = ? AND " +
ContactsContract.Data.MIMETYPE + " = ?";
String[] whereParameters = new String[] {
contactId, ContactsContract.CommonDataKinds.Note.CONTENT_ITEM_TYPE };
Cursor contacts = getContentResolver().query(
ContactsContract.Data.CONTENT_URI, columns, where,
whereParameters, null);
if (contacts.moveToFirst()) {
String rv = contacts.getString(0);
note = rv;
} else{
String rv = contacts.getString(i);
note = rv;
}
contacts.close();
System.out.println("Note is: " + note);
cursor.moveToNext();
}
我怎樣才能得到其他值如電話,姓名等 String data = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DATA)); 我試圖得到這樣的價值,但它不工作 – user2934930
請看我的答案,如果答案是幫助你,那麼請接受它。 –