只要电话响起并销毁敬酒,我就会尝试弹出敬酒消息,电话被拒绝或接听。
在OnReceive
方法中我有这样的东西:
Bundle bundle=intent.getExtras();
final String state=bundle.getString(TelephonyManager.EXTRA_STATE);
if (state.equalsIgnoreCase(TelephonyManager.EXTRA_STATE_RINGING))
{
Toast toast= new Toast(context);
toast.show();
new CountDownTimer(3500,1000)
{
@Override
public void onFinish()
{
if (state.equalsIgnoreCase(TelephonyManager.EXTRA_STATE_IDLE)||
(state.equalsIgnoreCase(TelephonyManager.EXTRA_STATE_OFFHOOK))
{
toast.cancel();
}
else
{
toast.setDuration(Toast.LENGTH_LONG);
toast.show();
start();
}
}
问题是,即使在挂断电话后,toast 消息也会不断弹出。就像状态永远不会处于 HANG_UP 或 IDLE 模式。
我做错什么了?