franza
franza

Reputation: 2327

ContentResolver.query throws exception for HTC EVO 4G LTE

I have a trouble with reading reminders on HTC EVO 4G LTE (Android 4.0.3). Code:

1 | Uri uri = CalendarContract.Reminders.CONTENT_URI;
2 | Cursor c = cr.query(uri, null, null, null, CalendarContract.Reminders._ID + " ASC");

Stack trace:
at android.os.Parcel.readException(Parcel.java:1338)
    at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:182)
    at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:136)
    at android.content.ContentProviderProxy.query(ContentProviderNative.java:406)
    at android.content.ContentResolver.query(ContentResolver.java:315)
    at bla.bla.SomeClass.somefunction(SomeClass.java:2)

Upvotes: 1

Views: 598

Answers (1)

Lance Nanek
Lance Nanek

Reputation: 6397

I tested your code and got the same error on m AT&T HTC One X. Adding a projection argument fixed the problem, however. So this works:

    final String[] columnsToReturn = new String[] {
            CalendarContract.Reminders.EVENT_ID
        };
    final Cursor c = cr.query(uri, columnsToReturn, null, null, BaseColumns._ID + " ASC");

The projection argument lists which columns of data you want returned for each result returned by the cursor. So this is saying to return the event ID for each returned reminder.

Upvotes: 2

Related Questions