Android 上次拨出通话时长
我有一个广播侦听器,它查找任何传出呼叫,然后在传出呼叫完成后启动服务。事情在服务中,我需要尝试获取最后一次呼叫的持续时间。我尝试使用该查询查询CallLog.Calls.CONTENT\u URIAndroid 上次拨出通话时长,android,call,calllog,Android,Call,Calllog,我有一个广播侦听器,它查找任何传出呼叫,然后在传出呼叫完成后启动服务。事情在服务中,我需要尝试获取最后一次呼叫的持续时间。我尝试使用该查询查询CallLog.Calls.CONTENT\u URI Cursor s = r.query(android.provider.CallLog.Calls.CONTENT_URI, null, null, null,CallLog.Calls.DATE + " DESC"); 我要找的只是最后一次通话的持续时间。我两个都试过了,s.moveToFirst
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);
我是不是错过了什么?我怎样才能单独获得最后一次通话的持续时间?由于该服务仅在传出呼叫后启动,因此我不必在此处检查呼叫类型。将字段CallLog.Calls.DURATION
添加到数组中
看看这个很抱歉,我不知道要将它添加到哪个数组。使用s.getColumnIndex(android.provider.CallLog.Calls.DURATION);,我从calllog数据库中获取某个持续时间值,但我只需要最后一次调用的持续时间。简言之,我在这里寻找的是,在查询数据库时,排序顺序应该是什么,以及光标应该移动到第一个还是最后一个,以获取最后一次调用的持续时间。