当我们打电话的时候,当然不希望歌曲还在唱着,希望手机软件能智能些,来电时暂停,通话结束时继续播放。所以这里我们就用到了android带的电话监听功能。下面请看代码:
首先在onCreate函数里获取服务:
TelephonyManager telManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);//取得TelephonyManager服务
telManager.listen(new MobliePhoneStateListener(),PhoneStateListener.LISTEN_CALL_STATE);
然后是写一个继承PhoneStateListener的自定义函数:
//电话监听
private class MobliePhoneStateListener extends PhoneStateListener {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
switch (state) {
case TelephonyManager.CALL_STATE_IDLE: /* 无任何状态时 */
rePlay();
break;
case TelephonyManager.CALL_STATE_OFFHOOK: /* 接起电话时 */
case TelephonyManager.CALL_STATE_RINGING: /* 电话进来时 */
pause();
break;
default:
break;
}
}
}
就这样,不知不觉电话监听功能就实现了。