我使用以下代码段来获取联系人姓名和号码,它在模拟器上工作正常,但是当我在我的Froyo 2.2.1中安装应用程序时,它只返回我的名字,而不是返回我的号码它返回'null',任何人都可以帮我解决这个问题吗? 非常感谢任何解决方案。感谢
ContentResolver r = getContentResolver();
Cursor cursor = r.query(People.CONTENT_URI, null, null, null, null);
// Let activity manage the cursor
// startManagingCursor(cursor);
// Log.d(TAG, "cursor.getCount()=" + cursor.getCount());
// Get value from content provider
int nameIndex = cursor.getColumnIndex(People.NAME);
int numberIndex = cursor.getColumnIndex(People.NUMBER);//OrThrow(People.NUMBER);
cursor.moveToFirst();
StringBuilder s = new StringBuilder();
do {
String name = cursor.getString(nameIndex);
String number = cursor.getString(numberIndex);
s.append(name+ ": " + number + "\n");
} while (cursor.moveToNext());
答案 0 :(得分:2)
不推荐使用People API尝试使用已为Android 2.0 +引入的ContactsContract API。
您可以查看this blog post about using the contactscontract或api documentation