我正在编写一个旨在通话期间运行的应用。在用户拨打电话并启动我的应用程序后,我希望我的应用程序能够知道是否从错误连接中删除了呼叫。这可能吗?感谢
答案 0 :(得分:5)
没有CALL_STATE_OFFHOOK - > CALL_STATE_IDLE还表示正常终止的呼叫?
无论如何,您只需使用PhoneStateListener类的onCallStateChanged回调方法检查调用状态即可。只要状态发生变化,就会调用它,您可以切换提供的状态以查找它所处的状态。
答案 1 :(得分:2)
Android TelephonyManager
类提供getCallState()
方法,该方法会告诉您当前通话的状态。您将寻找从CALL_STATE_OFFHOOK
到CALL_STATE_IDLE
的转换。
不幸的是,我没有看到任何方法来注册回调,所以你可能不得不求助于轮询。
http://developer.android.com/reference/android/telephony/TelephonyManager.html