我尝试找到一些手机联系人并在我的应用中显示,但我收到错误:
Failed to read row 0, column -1 from a CursorWindow which has 370 rows, 38 columns.
这是我的代码:
Cursor contacts = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
String aNumberFromContacts[] = new String[contacts.getCount()];
int i = 0;
int numberFieldColumnIndex = contacts.getColumnIndex(PhoneLookup.NUMBER);
while(contacts.moveToNext()) {
String number = contacts.getString(numberFieldColumnIndex);
aNumberFromContacts[i] = number ;
i++;
}
contacts.close();
你能猜出出了什么问题吗?
答案 0 :(得分:0)
负数意味着您要查找的列不存在。尝试使用1,如果没有崩溃,那么你可以放心,问题在于获取列索引。 试试这个:
contacts.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)