监听去电状态的时候,
当我拨通另外一个号码的时候,这个号码没有接听
怎么状态直接就变成了OFFHOOK
------解决方案--------------------
在android的源码中有定义,Phone的状态只有三种:IDLE,OFFHOOK,RINGING,单靠Phone的状态无法判断当前通话的具体状态。因为通话的具体状态包括IDLE,DIALING,ACTIVE,HOLD等等。OFFHOKK包括三种call的状态:DIALING,ACTIVE,HOLD,当电话一拨出去,对方没有接听,此时call的状态是DIALING(正在拨号,还没有接通),所以Phone的状态就是OFFHOOK。当状态是OFFHOOK时,并不能判定电话接通了,电话接通时call的状态是ACTIVE.而android目前提供的接口,不能获取到ACTIVCE的状态。
------解决方案--------------------
是这样的,正常状态为CALL_STATE_IDLE,你拨打电话一按拨打键就是CALL_STATE_OFFHOOK,不管对方接不接听,断开后就是CALL_STATE_IDLE,而接听电话是先CALL_STATE_RINGING,你接通后是CALL_STATE_OFFHOOK,断开是CALL_STATE_IDLE,