2012-10-09 111 views
0

我有收到呼叫时发生的活动。但是,它只在收到第一次电话时起作用。使其适用于后续呼叫的最佳方式是什么?我应该做一些除了startActivity以外的事情吗(即,有没有像bringActivityToForeground?)还是我需要结束活动时,呼叫被删除?我将如何结束一项活动?结束活动

public class CallReceiver extends BroadcastReceiver { 

    @Override 
    public void onReceive(Context context, Intent intent) { 
    String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE); 
    if (TelephonyManager.EXTRA_STATE_RINGING.equals(state)) { 
     Intent myIntent = new Intent(context, MyActivity.class); 
     context.startActivity(myIntent); 

    } else if (TelephonyManager.EXTRA_STATE_IDLE.equals(state)) { 
     // TODO: remove the screen? 
    }  
    } 
} 

回答

0

您是否明确尝试过在接到呼叫后恢复活动?

+0

我该怎么做?我想我可能想要在呼叫被接听或放弃时结束该活动,但我不知道该怎么做。 –

+1

您可以将androidmanifest.xml中的activity的noHistory属性声明为true。当它不再需要时,这将完成活动。 – Daniel