获取通话时长

原创 2012年03月28日 13:40:48
Cursor cursor = getContentResolver().query(Calls.CONTENT_URI,  
    new String[] { Calls.DURATION, Calls.TYPE, Calls.DATE },  
    null,  
    null,  
    Calls.DEFAULT_SORT_ORDER);  
MainActivity.this.startManagingCursor(cursor);  
boolean hasRecord = cursor.moveToFirst();  
long incoming = 0L;  
long outgoing = 0L;  
int count = 0;  
while (hasRecord) {  
    int type = cursor.getInt(cursor.getColumnIndex(Calls.TYPE));  
    long duration = cursor.getLong(cursor.getColumnIndex(Calls.DURATION));  
    switch (type) {  
        case Calls.INCOMING_TYPE:  
            incoming += duration;  
            break;  
        case Calls.OUTGOING_TYPE:  
            outgoing += duration;  
        default:  
            break;  
    }  
    count++;  
    hasRecord = cursor.moveToNext();  
}  
Toast.makeText(MainActivity.this,  
    "共计 " + count + "次通话 . 总通话时长 " + (incoming + outgoing) + "秒. 其中接听 " + incoming + " 秒, 拔打 "  
                    + outgoing + " 秒.",  

    Toast.LENGTH_LONG).show(); 




需要添加权限:

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

相关文章推荐

Cordova拨号获取通话时长

关于获取拨出号码的通话时间由于最近公司项目中要接入cordova插件,在使用第三方CordovaCallNumberPlugin打电话插件,因为需求中需要打电话的时长,自己在CordovaCallNu...

Chronometer android计时器组件Chronometer的使用,android通话时长计时控件

在安卓开发过程中经常需要计数器的使用,我们可以用handler实现间隔性的操作。 例如按两次返回back退出,隔几秒重复换页面等。 但是也经常有一类需求类是打电话时候记录时长的操作。 这就用到了and...

L版本通话记录里面显示的通话时长与实际不一致的问题

[DESCRIPTION] SW Version:L0、L1   1. 问题1:通话记录里面显示的通话时长与实际不一致的问题。 2. 问题2:通话过程中去设置时间,通话计时时间会变的问题。 ...

获取音频时长类

  • 2014年12月09日 17:13
  • 535KB
  • 下载

SQL 数据小练习,呼叫中心 ----查询通话时间最长的5条记录 ----查询以0开头的通话总时,以秒为计算单位 ----查询2010年7月通话总时长最多的前两个呼叫员的编号 ----查询201

--CREATE TABLE [CallRecords] --( -- [Id] [int] NOT NULL identity(1,1), -- [CallerNumber] [nvarcha...

iOS 音频时长获取不正确

  • 2017年11月09日 14:13
  • 2.69MB
  • 下载

java获取网络音乐文件时长

  • 2013年08月05日 12:57
  • 1020KB
  • 下载

通过Windows Media Player控件获取音频文件的时长

最近做项目VS2010 MFC 程序,需要获取音频文件的时长。在网上查了很多资料,感觉用Windows Media Player插件比较方便,给大家分享一下。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:获取通话时长
举报原因:
原因补充:

(最多只允许输入30个字)