質問

連絡先の詳細を取得するために必要な「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();
        }
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top