【问题标题】:last outgoing call duration android最后拨出电话持续时间android
【发布时间】:2012-11-01 05:00:22
【问题描述】:

我有一个广播监听器,它查找任何拨出电话,然后在拨出电话完成后启动服务。事情在服务中,我需要尝试获取最后一次通话时间。我尝试使用查询查询 CallLog.Calls.CONTENT_URI,

Cursor s = r.query(android.provider.CallLog.Calls.CONTENT_URI, null, null, null,CallLog.Calls.DATE + " DESC");

我正在寻找的只是最后一次通话的持续时间。我尝试了s.moveToFirst();s.moveToLast();。但不知何故,我无法获得与最后一次拨出电话的持续时间相对应的正确值。我尝试获取持续时间,

int duration=s.getColumnIndex(android.provider.CallLog.Calls.DURATION);
String Duration=s.getString(duration);

我错过了什么吗?我怎样才能单独获得最后通话时间?因为服务是在拨出电话后才启动的,所以这里不必检查呼叫类型。

【问题讨论】:

  • 简而言之,我在这里寻找的是,查询数据库时的排序顺序应该是什么,以及是否应该将光标移到第一个或最后一个以获得最后一个调用持续时间。

标签: android call calllog


【解决方案1】:

将字段CallLog.Calls.DURATION 添加到数组中。

courtesy

看看这个tutorial

【讨论】:

  • 很抱歉,我不知道要将它添加到哪个数组。事情是使用 s.getColumnIndex(android.provider.CallLog.Calls.DURATION);,我从通话记录数据库中获取了一些持续时间值,但我只想要最后一次通话持续时间。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-10
  • 1970-01-01
  • 1970-01-01
  • 2014-04-27
相关资源
最近更新 更多