如何在android中按日期获取呼叫记录?

时间:2013-03-17 22:52:47

标签: android sqlite android-cursor calllog

我想按日期获取通话记录。但是要坚持使用要传递给光标的日期格式来获取值。

调用日志光标

Calendar calendar = Calendar.getInstance();
SimpleDateFormat dateFormatter = new SimpleDateFormat("yyyy-MM-dd");

String selection = CallLog.Calls.DATE + " = "+dateFormatter.format(calendar.getTime());

Cursor mCallLogCursor = mContext.getContentResolver().query(
            CallLog.Calls.CONTENT_URI, projection, selection, null,
            CallLog.Calls._ID + " DESC");

尝试使用各种dateformatter类型,但都没有工作。

我在这里做错了什么?

1 个答案:

答案 0 :(得分:3)

试试这个:

Cursor c = contentResolver.query(CallLog.Calls.CONTENT_URI,
                new String[] { CallLog.Calls.DATE, CallLog.Calls.DURATION,
                        CallLog.Calls.NUMBER, CallLog.Calls._ID },
                CallLog.Calls.DATE + ">?",
                new String[] { String.valueOf(sinceDate.getTime())},
                CallLog.Calls.NUMBER + " asc");

sinceDate是一个Date变量,设置为您想要涵盖的句点的开头。