public static int getPhoneRecordTimes(Context mContext,String phoneNumber){
Cursor cursor = mContext.getContentResolver().query(CallLog.Calls.CONTENT_URI,
null, null, null, null);
int times = 0;
if(cursor.moveToFirst()){
do{
//CallLog calls =new CallLog();
//呼叫类型
String type;
switch (Integer.parseInt(cursor.getString(cursor.getColumnIndex(CallLog.Calls.TYPE)))) {
case CallLog.Calls.INCOMING_TYPE:
type = "呼入";
break;
case CallLog.Calls.OUTGOING_TYPE:
//如果传过来的电话号码与检测系统中通话记录相同,则times+1
if(phoneNumber.equals(cursor.getString(cursor.getColumnIndex(CallLog.Calls.NUMBER)))){
times = times + 1;
}
type = "呼出";
break;
case CallLog.Calls.MISSED_TYPE:
type = "未接";
break;
default:
type = "挂断";
break;
}
}while(cursor.moveToNext());
SimpleDateFormat sfd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = new Date(Long.parseLong(cursor.getString(cursor.getColumnIndexOrThrow(Calls.DATE))));
//呼叫时间
String time = sfd.format(date);
//联系人
String name = cursor.getString(cursor.getColumnIndexOrThrow(Calls.CACHED_NAME));
//通话时间,单位:s
String duration = cursor.getString(cursor.getColumnIndexOrThrow(Calls.DURATION));
}
return times;
}
Cursor cursor = mContext.getContentResolver().query(CallLog.Calls.CONTENT_URI,
null, null, null, null);
int times = 0;
if(cursor.moveToFirst()){
do{
//CallLog calls =new CallLog();
//呼叫类型
String type;
switch (Integer.parseInt(cursor.getString(cursor.getColumnIndex(CallLog.Calls.TYPE)))) {
case CallLog.Calls.INCOMING_TYPE:
type = "呼入";
break;
case CallLog.Calls.OUTGOING_TYPE:
//如果传过来的电话号码与检测系统中通话记录相同,则times+1
if(phoneNumber.equals(cursor.getString(cursor.getColumnIndex(CallLog.Calls.NUMBER)))){
times = times + 1;
}
type = "呼出";
break;
case CallLog.Calls.MISSED_TYPE:
type = "未接";
break;
default:
type = "挂断";
break;
}
}while(cursor.moveToNext());
SimpleDateFormat sfd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = new Date(Long.parseLong(cursor.getString(cursor.getColumnIndexOrThrow(Calls.DATE))));
//呼叫时间
String time = sfd.format(date);
//联系人
String name = cursor.getString(cursor.getColumnIndexOrThrow(Calls.CACHED_NAME));
//通话时间,单位:s
String duration = cursor.getString(cursor.getColumnIndexOrThrow(Calls.DURATION));
}
return times;
}