1

HTC EVO 4G LTE (Android 4.0.3) でリマインダーの読み取りに問題があります。コード:

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)
4

1 に答える 1

2

あなたのコードをテストしたところ、m AT&T HTC One X で同じエラーが発生しました。ただし、射影引数を追加すると問題は解決しました。したがって、これは機能します:

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

射影引数は、カーソルによって返される各結果に対して返されるデータの列をリストします。これは、返されたリマインダーごとにイベント ID を返すことを意味しています。

于 2012-08-17T04:31:57.430 に答える