小编İsa*_* C.的帖子

如何在 Android Studio 中获取最新的通话记录?

我有一个可以在下面运行的代码。但我无法限制它。我只想获取最近 20 条通话记录。但这就是我查看所有时间搜索日志的方式。

应该只是最后的通话记录,我只需要看20条就可以了。任何帮助,我将不胜感激。

我的守则;

private void getCallLogs() {

        ContentResolver cr = getBaseContext().getContentResolver();
        Cursor c = cr.query(CallLog.Calls.CONTENT_URI, null, null, null, null);
        int totalCall = 1;
        if (c != null) {
            totalCall = c.getCount();
            if (c.moveToFirst()) {
                for (int j = 0; j < totalCall; j++) {

                    String callDate = c.getString(c.getColumnIndexOrThrow(CallLog.Calls.DATE));
                    String phNumber = c.getString(c.getColumnIndexOrThrow(CallLog.Calls.NUMBER));
                    String callDuration = c.getString(c.getColumnIndexOrThrow(CallLog.Calls.DURATION));
                    Date dateFormat= new Date(Long.valueOf(callDate));
                    String callDayTimes = String.valueOf(dateFormat);
                    String direction = null;

                    switch (Integer.parseInt(c.getString(c.getColumnIndexOrThrow(CallLog.Calls.TYPE)))) {
                        case Telephony.Sms.MESSAGE_TYPE_INBOX:
                            direction = "OUTGOING";
                            break;
                        case …
Run Code Online (Sandbox Code Playgroud)

android calllog telephonymanager android-cursor

4
推荐指数
1
解决办法
8394
查看次数