我有一个在接到电话时发生的活动。但是,它仅在第一次接到电话时才有效。使它适用于后续调用的最佳方法是什么?除了 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?
}
}
}