0
我想通過android應用程序訪問通話記錄。我通過應用程序採取數據和更新數據庫的值,但更新後,我不能得到更新的值在通話清單。如何通過Android應用程序更新通話記錄
代碼下面我想:
Uri allCalls = Uri.parse("content://call_log/calls");
Cursor c = managedQuery(allCalls, null, null, null, null);
if (c.moveToFirst()) {
do{
String callType = "";
switch (Integer.parseInt(c.getString(
c.getColumnIndex(Calls.TYPE))))
{
case 1: callType = "Incoming";
break;
case 2: callType = "Outgoing";
break;
case 3: callType = "Missed";
}
} while (c.moveToNext());
}
ContentValues values=new ContentValues();
values.put("name", "Unknown");
int k=getContentResolver().update(allCalls, values,null, null);
我對於k爲多少更新的行數,但在通話清單我沒有得到更新值的整數值。
編輯: 我能夠插入和刪除呼叫列表值,當我檢查呼叫列表時顯示結果爲插入新行或刪除現有的但當我更新值我可以更新它的返回值作爲更新查詢的結果,當我通過點擊callLog列表檢查時,更新值保持一小部分秒,然後舊值顯示...
我不知道我在哪裏做錯了?請幫我...
@deepa ..你爲什麼不加數字...? – ngesh
看看這篇文章:http://stackoverflow.com/questions/5635874/how-can-i-update-the-contents-of-an-entry-in-the-call-log – spatulamania
@ntc ..我是單獨更新此人的姓名。更新後,當我第一次登錄模擬器時,它顯示更新的名稱爲未知,然後它顯示爲通話列表中的默認名稱。我不知道我是否犯了錯誤..是否必須在更新db值後進行提交? – deepa