我有一个广播监听器,它会查找任何拨出呼叫,然后在拨出呼叫完成后启动服务。事情在服务范围内,我需要尝试获取最后的呼叫持续时间。我尝试使用查询
查询CallLog.Calls.CONTENT_URICursor 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);
我错过了什么吗?我怎样才能获得最后一次通话时间?因为服务仅在拨打电话后启动,所以我不必在这里检查呼叫类型。