电话结束后重启活动的正确方法

时间:2016-11-30 09:46:38

标签: java android service phone-state-listener

这两种方法都有效,但我不确定哪种方法最适合使用,以便它每次都适用于API 17-25。我的应用程序依赖于通过PhoneStateListener调用结束后打开的活动。

我已经看过推荐的两种方式,抱歉,如果这是一个糟糕的问题!

Intent restart = mContext.getPackageManager().
            getLaunchIntentForPackage(mContext.getPackageName());
    restart.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    restart.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    mContext.startActivity(restart);

    Intent intent = new Intent(mContext, MainActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
    mContext.startActivity(intent);

1 个答案:

答案 0 :(得分:2)

您应该使用Activity类的recreate()方法重新启动Activity而不是这2个方法