其他分享
首页 > 其他分享> > Android-删除未接来电通知

Android-删除未接来电通知

作者:互联网

反正有通过代码删除未接来电通知的功能吗?并以某种方式从通话记录中删除最后一个未接来电?

解决方法:

是的,有可能.尝试以下操作:

Uri UriCalls = Uri.parse("content://call_log/calls");
Cursor cursor = getApplicationContext().getContentResolver().query(UriCalls, null, null, null, null);

正在读取通话记录…

if(cursor.getCount() > 0){
    cursor.moveToFirst();
    while(!cursor.isAfterLast()){
        String number = cursor.getString(cursor.getColumnIndex(CallLog.Calls.NUMBER)); // for  number
        String name = cursor.getString(cursor.getColumnIndex(CallLog.Calls.CACHED_NAME));// for name
        String duration = cursor.getString(cursor.getColumnIndex(CallLog.Calls.DURATION));// for duration
        int type = Integer.parseInt(cursor.getString(cursor.getColumnIndex(CallLog.Calls.TYPE)));// for call type, Incoming or out going
        cursor.moveToNext();
    }
}

正在删除通话记录中的条目…

String queryString= "NUMBER='" + number + "'";
if (cursor.getCount() > 0){
        getApplicationContext().getContentResolver().delete(UriCalls, queryString, null);
}

允许:

<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />

注意:请在呼叫日志上参考此doc,以获取更多信息.

使用上面的代码,您可以获得预期的结果.

标签:telephony,android
来源: https://codeday.me/bug/20191202/2086865.html