2011-10-14 56 views

回答

27

是的,你可以检查是否在通话结束设备或者未激活:

public static boolean isCallActive(Context context){ 
    AudioManager manager = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE); 
    if(manager.getMode()==AudioManager.MODE_IN_CALL){ 
     return true; 
    } 
    else{ 
     return false; 
    } 
} 
+0

感谢。这是一个好主意。我刚刚添加了第二个后续问题,因为这只能解决我问题的一半(我想这个问题没有说得很好) – DanJ

+2

我不认为这是可行的方法,因为音频管理器也可以被其他应用程序使用为自己的目的设置不同的模式(如mode_normal或mode_in_call)..这样上面的代码将不会有用。 –

+2

这并不能确定电话是否处于活动状态;但幸运的是,这种方法还可以查找VOIP通话是否也处于活动状态。 –

相关问题