【问题标题】:Get the missed call list and delete it from call log in android获取未接来电列表并将其从android的通话记录中删除
【发布时间】:2012-05-27 12:29:13
【问题描述】:

我想单独获取特定的呼叫类型并将其从 android 的呼叫日志中删除。

while (cursor.moveToNext()) { 
  String queryString1= "CallType=’" + CallLog.Calls.MISSED_TYPE + "‘"; 
  Log.v("CallType", queryString1); 
  if(CallLog.Calls.TYPE.equals("missed")) {
    sb.append("Number "+CallLog.Calls.NUMBER+"\nName "+CallLog.Calls.CACHED_NAME);
  }
}
getContentResolver().delete(UriCalls, CallLog.Calls.MISSED_TYPE, null);

这是我为未接来电尝试过的代码,因为 Missed_type 是 int,我收到错误“ContentResolver 类型中的方法 delete(Uri, String, String[]) 不适用于参数(Uri,整数,空)”

给我一​​些提示以从日志中删除特定呼叫类型

【问题讨论】:

    标签: android


    【解决方案1】:

    您可以使用以下代码获取未接来电警报

    final String[] projection = null;
    final String selection = null;
    final String[] selectionArgs = null;
    final String sortOrder = android.provider.CallLog.Calls.DATE + " DESC";
    Cursor cursor = null;
    try{
        cursor = context.getContentResolver().query(
             Uri.parse("content://call_log/calls"),
             projection,
             selection,
             selectionArgs,
             sortOrder);
     while (cursor.moveToNext()) { 
         String callLogID =           cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls._ID));
        String callNumber = cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls.NUMBER));
        String callDate = cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls.DATE));
        String callType = cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls.TYPE));
        String isCallNew = cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls.NEW));
        if(Integer.parseInt(callType) == MISSED_CALL_TYPE && Integer.parseInt(isCallNew) > 0){
            if (_debug) Log.v("Missed Call Found: " + callNumber);
        }
     }
    } catch(Exception ex){
     if (_debug) Log.e("ERROR: " + ex.toString());
    }finally{
     cursor.close();
    }
    

    您也可以使用此链接http://android2011dev.blogspot.in/2011/08/get-android-phone-call-historylog.html

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

    androidmanifest.xml

    中给予上述权限

    使用下面的链接删除未接来电列表,你只需要传递你从上面代码中得到的号码

    http://www.mobisoftinfotech.com/blog/android/androidcalllogdeletion/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-03
      • 1970-01-01
      • 2019-10-30
      相关资源
      最近更新 更多