Java 无法使用联系人ID检索姓名和号码
我试图使用存储在数据库中的id检索联系人的姓名和号码,但尝试Java 无法使用联系人ID检索姓名和号码,java,android,Java,Android,我试图使用存储在数据库中的id检索联系人的姓名和号码,但尝试cursor.moveToFirst()时,光标返回false。这是密码- Log.d(TAG, id); Cursor cursor = this.getContentResolver().query( ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Ph
cursor.moveToFirst()
时,光标返回false
。这是密码-
Log.d(TAG, id);
Cursor cursor = this.getContentResolver().query(
ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null,
ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = ?",
new String[]{id}, null);
if(cursor == null){
return;
}
while (cursor.moveToFirst())
{
try{
number = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
}catch (NullPointerException e){
number = "";
}
try{
name = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
}catch (NullPointerException e){
name = "No name";
}
}
cursor.close();
注意-ID是正确的。我已经使用日志语句进行了检查
初始化光标后,执行直接跳到cursor.close()
。在调试和检查时,我发现while语句失败,因为cursor.moveToFirst()
返回false
moveToFirst()返回false表示没有与ur匹配的数据
查询对于确认检查游标,用于检查数据的getCount()是
有没有