2

尝试获取合同组时出现问题

Uri contacts = ContactsContract.AUTHORITY_URI;
  //Log.v("23",contacts.toString());
  // Make the query.
  Cursor managedCursor = act.managedQuery(contacts, projection, // Which
    // columns
    // to
    // return
    null, // Which rows to return (all rows)
    null // Selection arguments (none)
    // Put the results in ascending order by name
    , ContactsContract.Groups.TITLE + " ASC"
    );

有:

<uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-permission>

我明白了 ERROR/DatabaseUtils(198): java.lang.IllegalArgumentException: Unknown URL content://com.android.contacts

4

2 回答 2

1

从我的角度来看,您使用了错误的Uri尝试ContactsContract.Groups.CONTENT_URI与联系人组一起工作非常棘手,因此请仔细阅读文档

于 2010-02-26T17:37:00.187 回答
1

是的,错误的 URI。这是一个按名称查找的示例(来自http://www.androidref.com/#MapLocation):

//
//  Find contact based on name.
//
ContentResolver cr = getContentResolver();
Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI, null,
    "DISPLAY_NAME = '" + NAME + "'", null, null);
if (cursor.moveToFirst()) {
    String contactId =
        cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));
...

周杰伦

于 2010-02-26T18:40:14.413 回答