Android 使用BroadcastListener在调用结束后从调用日志获取调用持续时间

Android 使用BroadcastListener在调用结束后从调用日志获取调用持续时间,android,broadcastreceiver,telephonymanager,calllog,Android,Broadcastreceiver,Telephonymanager,Calllog,我需要尝试在通话结束后获取通话持续时间。我有一个广播侦听器,它使用电话管理器跟踪电话状态,即“脱机”、“空闲”等等。使用这个接收器,我可以找出一个呼出的电话什么时候结束了。在完成一个调用后,我启动一个服务来获取最后一个调用的调用持续时间。但是,我得到的值是上一次调用的值,而不是刚刚完成的调用的值。我想我是在电话更新之前从calllog数据库获取的。因为如果我以后调用同一个函数并获取值,它会给我正确的时间。。我是否应该在开始服务之前延迟?如果是的话,延迟的方式和时间是多少?我知道怎么做了。我确保从

我需要尝试在通话结束后获取通话持续时间。我有一个广播侦听器,它使用电话管理器跟踪电话状态,即“脱机”、“空闲”等等。使用这个接收器,我可以找出一个呼出的电话什么时候结束了。在完成一个调用后,我启动一个服务来获取最后一个调用的调用持续时间。但是,我得到的值是上一次调用的值,而不是刚刚完成的调用的值。我想我是在电话更新之前从calllog数据库获取的。因为如果我以后调用同一个函数并获取值,它会给我正确的时间。。我是否应该在开始服务之前延迟?如果是的话,延迟的方式和时间是多少?

我知道怎么做了。我确保从调用日志获取的服务在调用结束后大约2秒启动。这样,我就得到了正确的值,而不是之前的调用持续时间值,因为此时调用日志会更新