3
我在查詢CallLog.Calls內容提供者的詳細呼叫。除了當我嘗試按日期查詢時,一切正常。也就是說,要獲取特定日期或日期範圍的通話詳細信息等等,我知道日期存儲爲長(毫秒格式),所以我試着先將日期轉換,然後通過它進行查詢,但我必須在這裏做一些錯誤。這裏是我正在運行的查詢,請注意,當我刪除「WHERE DATE =」部分或將其替換爲「WHERE TYPE =」之類的東西時,它運行良好。因此,如何運行查詢以獲取日期或日期範圍?對此有何幫助?謝謝。CallLog.Calls按日期查詢
Cursor c = getContentResolver().query(CallLog.Calls.CONTENT_URI, null,
CallLog.Calls.DATE + "<=?",
new String[] { String.valueOf(dateSTR)}, ORDER_BY);
startManagingCursor(c);
我試過了,它似乎工作。但我有一個奇怪的概率,但如果我嘗試按日期篩選,如CallLog.Calls.DATE +「> ?,它似乎工作,但如果我嘗試它像CallLog.Calls.DATE +」= ?,它總是返回沒有價值,也沒有顯示任何錯誤。可能是什麼問題,我是否以錯誤的方式進行查詢? – redGREENblue 2011-04-02 18:09:54
當您查詢CallLog.Calls.DATE +「=?」時你幾乎總是會得到一個空的結果集,因爲你檢查的時間恰好是毫秒。嘗試類似於CallLog.Calls.DATE +「>?和」+ CallLog.Calls.DATE +「<?」檢查範圍 – alibi 2011-04-03 20:29:41
哦。現在一切都說得通了。我怎麼沒有發生過?謝謝您的幫助。 – redGREENblue 2011-04-03 22:27:03