2011-10-14 58 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通話是否也處於活動狀態。 –

相關問題