Uri calendars = Uri.parse("content://com.android.calendar/events");

        String[] projection = new String[] {
            "calendar_id",
            "htmlUri",
            "title",
            "eventLocation",
            "description",
            ............
            "deleted"
        } ;
       
        Cursor managedCursor = mCtx.getContentResolver().query(calendars,
                projection, "selected=1", null, null) ;
       
        if (!managedCursor.isAfterLast()) {
            do {
                for (int idx = 0;idx < managedCursor.getColumnCount();idx++) {
                    if (managedCursor.getString(idx) != null) {                         //여기서 에러..
                        buf.append(managedCursor.getColumnName(idx).toUpperCase()
                           + ": " + managedCursor.getString(idx) + "\n");
                    }
                }
               
            } while (managedCursor.moveToNext());
        }


위코드를 실행시키면 if (managedCursor.getString(idx) != null)

여기서 말도없이 앱이 종료되어버립니다

위코드와같이 데이타타입에관계없이 범용적으로 사용할수는없을까요?


그리고

카렌다 든지 주소록이든지 해당 테이블필드들과 데이타타입들에대한

레퍼런스 어디서볼수있나요?