質問
連絡先の詳細を取得するために必要な「n」連絡先IDのリストがあります。連絡先IDを使用してnクエリを作成し、それらの連絡先を取得する簡単な方法の1つ。しかし、これは特にNが大きい場合は非常に時間がかかります。これらの結果(バッチクエリなど)を取得するためのより簡単な方法があるかどうかを知りたいと思います。
解決
ContentResolver cr = context.getContentResolver();
String[] projection = new String[] { ContactsContract.Contacts._ID,
ContactsContract.Contacts.DISPLAY_NAME};
Cursor c = cr.query(ContactsContract.Contacts.CONTENT_URI, projection,
ContactsContract.Contacts._ID + " in ("+comma_delimited_ids+") , null,
ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC");
次に、カーソルをループできます
if (c!=null) {
for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()) {
// your code to get details from cursor
}
c.close();
}
所属していません StackOverflow