Как отфильтровать журналы вызовов определенной даты на Android программно? - PullRequest
0 голосов
/ 02 ноября 2019

Мне нужна помощь для того, как я могу кодировать для запроса курсора для конкретной даты совпадения с датой записи мудрых вызовов ........................... .........

Ниже мой код;

dateTimeToMillis функция;

public static String dateTimeToMillis(String dateTime) {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

    Date mDate = null;
    try {
        mDate = sdf.parse(dateTime);
    } catch (ParseException e) {
        e.printStackTrace();
    }
    long timeInMilliseconds = mDate.getTime();
    return String.valueOf(timeInMilliseconds);
}

Ниже код дляполучить записи вызовов

  StringBuilder stringBuffer = new StringBuilder();

    Cursor managedCursor = null;
    managedCursor = context.getContentResolver().query(
            CallLog.Calls.CONTENT_URI,
            null,
            CallLog.Calls.DATE + " = ? " , new String[]{dateTimeToMillis(startDateTime)},
            CallLog.Calls.DATE + " DESC");

    int number = managedCursor.getColumnIndex(CallLog.Calls.NUMBER);
    int type = managedCursor.getColumnIndex(CallLog.Calls.TYPE);
    int date = managedCursor.getColumnIndex(CallLog.Calls.DATE);
    int duration = managedCursor.getColumnIndex(CallLog.Calls.DURATION);

    ArrayList<String> callCount = new ArrayList<>();

    while (managedCursor.moveToNext()) {
        String phoneNumber = managedCursor.getString(number);
        String callType = managedCursor.getString(type);
        String callDate = managedCursor.getString(date);
        SimpleDateFormat formatter = new SimpleDateFormat("dd-MMM-yyyy HH:mm");
        String dateString = formatter.format(new Date(Long.parseLong(callDate)));
        String callDuration = managedCursor.getString(duration);

        String dir = null;

        int dirCode = Integer.parseInt(callType);

        if (dirCode == CallLog.Calls.OUTGOING_TYPE) {
            callCount.add(phoneNumber);
        }

        stringBuffer.append("\nPhone Number:--- " + phoneNumber + "\nCall Type:--- "
                + dir + "\nCall Date:---"
                + dateString + "\nCall Duration:---" + callDuration);
        stringBuffer.append("\n--------------------------");

        Log.e("stringBuffer.toString()",""+stringBuffer.toString());

    }

Запрос курсора не работает ....

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...