0

我想從通話記錄中刪除特定號碼。數字是這樣的 - 「#6666#」。在Android中以編程方式從通話記錄中刪除特定號碼

我這樣做:

String queryString = "NUMBER=" + number; 

    try { 
     context.getContentResolver().delete(CallLog.Calls.CONTENT_URI, 
       queryString, null); 
    } catch (Exception e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

當我*#之前和之後發生使用的主要問題,並給出了運行時異常。沒有,一切工作正常。

任何人都可以爲我提供解決方案嗎?

回答

0

確保你已經在manifast.xml以下權限:

<uses-permission android:name="android.permission.READ_CALL_LOG" /> 
<uses-permission android:name="android.permission.WRITE_CALL_LOG" /> 

刪除通話記錄特定號碼試試這個:

public void DeleteCallLogByNumber(String strNumber) { 
    Cursor cursor = getContentResolver().query(CallLog.Calls.CONTENT_URI, null, CallLog.Calls.NUMBER + " = ? ", strNumber , ""); 
    int idOfRowToDelete= cursor.getInt(cursor.getColumnIndex(CallLog.Calls._ID)); 
    getContentResolver().delete(Uri.withAppendedPath(CallLog.Calls.CONTENT_URI, String.valueOf(idOfRowToDelete)), "", null); 
    } 
} 
+0

不好。這就是我正在做的。 – 2014-09-06 18:36:16

+0

你正在得到什麼錯誤? – 2014-09-06 18:36:37

+0

@SagarPilkhwal:我想OP已經在他的問題中提到他的錯誤/問題。 – 2014-09-06 18:39:30

相關問題