联系人选择结果

时间:2011-02-02 15:31:44

标签: android android-activity android-intent contactscontract

我正在为我的应用使用ContactPicker。我正在使用这个this教程来构建我的onActivityResult方法。我无法构建内容左轮手枪;

Cursor cur = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);

不起作用,应用程序崩溃,我不知道它扔的是什么样的牛异常,如果有的话。我做错了什么?

代码:

ContentResolver cr = getContentResolver();
Cursor cur = cr.query(ContactsContract.Contacts.CONTENT_URI,
                null, null, null, null);  
if (cur.getCount() > 0) {  
    while (cur.moveToNext()) {  
    String id = cur.getString(cur.getColumnIndex(ContactsContract.Contacts._ID));   
    String name = cur.getString(cur.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));  
    if (Integer.parseInt(cur.getString(cur.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER))) > 0) {  
    if (Integer.parseInt(cur.getString(
                   cur.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER))) > 0) {
                Cursor pCur = cr.query(
            ContactsContract.CommonDataKinds.Phone.CONTENT_URI, 
            null, 
            ContactsContract.CommonDataKinds.Phone.CONTACT_ID +" = ?", 
            new String[]{id}, null);
            while (pCur.moveToNext()) {  
            // Do something with phones  
            }   
            pCur.close();
        }  
            }  
            }  
    }

1 个答案:

答案 0 :(得分:1)

<uses-permission android:name="android.permission.READ_CONTACTS" />
即使技术上正确,也不适用于许可 <uses-permission android:name="android.permission.READ_CONTACTS"> </uses-permission>
这很有效。