Android获取通话时间实例分析

gmqbanfm246005

gmqbanfm246005

2016-02-19 11:22

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的Android获取通话时间实例分析教程,一起来看看吧!超容易上手~
本文章总结了一段Android获取通话时间程序代码,有需要的朋友可参考一下。

我们知道安卓系统中通话时长应该是归Callog管,所以建议去查查ContactProvider,或者是TelephonyProvider

Service测试

可以的通话开始的时候启动Service 记录当前时间A, 然后stopSelf(); 另外在通话结束的时候再次启动一下Service,再次获得当前时间B, 然后把时间A和B进行比较处理

String time = Long.toString(比较后处理的时间)

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

然后调用
代码如下:

Toast.makeText(this, time, Toast.LENGTH_SHORT).show();

使之显示出来 ,再stopSelf();

获取联系人通话时间的长短java代码
代码如下:

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();

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)
展开更多 50%)
分享

猜你喜欢

Android获取通话时间实例分析

编程语言 网络编程
Android获取通话时间实例分析

腾讯来电怎么赚取更多的免费通话时间

手机软件 应用软件
腾讯来电怎么赚取更多的免费通话时间

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

腾讯来电得1000分钟通话时间免费获得技巧

手机软件 应用软件
腾讯来电得1000分钟通话时间免费获得技巧

解析android中系统日期时间的获取

编程语言 网络编程
解析android中系统日期时间的获取

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

通过Android trace文件分析死锁ANR实例过程

编程语言 网络编程
通过Android trace文件分析死锁ANR实例过程

在Android中 获取正在运行的Service 实例

编程语言 网络编程
在Android中 获取正在运行的Service 实例

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

win7 32位突破4G内存的技巧

win7 32位突破4G内存的技巧

windows系统中“我的电脑”图标不见了怎么办

windows系统中“我的电脑”图标不见了怎么办
下拉加载更多内容 ↓