在我的活动中打开Android通话记录

时间:2014-07-06 15:25:23

标签: android logging call

我不知道这是否有可能实现:

我正在为我工​​作的地方开发和安卓应用程序。除了应用程序之外,用户将无法使用任何其他内容。

我面临的问题是我需要获取用户的通话记录以查看未接来电,我计划使用操作系统通话记录屏幕,但我想知道我是否可以打开该通话< / p>

1 个答案:

答案 0 :(得分:3)

打开标准的Android通话记录

enter image description here

触发Calls.CONTENT_TYPE意图:

Intent i = new Intent();
i.setAction(Intent.ACTION_VIEW);
i.setType(CallLog.Calls.CONTENT_TYPE);
startActivity(i);           


以编程方式从数据库中获取呼叫日志记录(例如,填充您自己的UI):


Cursor cur = managedQuery(CallLog.Calls.CONTENT_URI, null, null, null, null);
int numberInd = cur.getColumnIndex(CallLog.Calls.NUMBER);
int typeInd = cur.getColumnIndex(CallLog.Calls.TYPE);
int dateInd = cur.getColumnIndex(CallLog.Calls.DATE);
int durationInd = cur.getColumnIndex(CallLog.Calls.DURATION);

while (cur.moveToNext()) {
     String number = cur.getString(numberInd);
     String type = cur.getString(typeInd);
     String date = cur.getString(dateInd);
     String duration = cur.getString(durationInd);
     int callCode = Integer.parseInt(type);
     // callCode can be OUTGOING_TYPE, INCOMING_TYPE or MISSED_TYPE

     .........
}


在这两种情况下,您都需要READ_CALL_LOG权限