ANDROID:飞溅:为什么我在恢复应用程序时总是看到启动屏幕

时间:2018-08-24 06:43:47

标签: android

我刚刚创建了我的第一个正确的android应用,并遇到了启动画面问题。每当我的应用程序进入前台时,都会首先显示启动屏幕,然后显示最后打开的活动。 恢复功能看起来不错,但为什么总是显示启动屏幕。在其他应用程序中,我没有看到这种行为。 这是我的代码:

minSdkVersion 24
targetSdkVersion 26

我使用了 android:noHistory =“ true” ,但仍然没有更改 我尝试了 intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); ,但仍然没有变化

来自AndroidManifesh.xml

<activity
        android:noHistory="true"
        android:label="@string/app_name"
        android:name=".activities.SplashActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity
        android:noHistory="true"
        android:configChanges="keyboardHidden"
        android:name=".activities.MainActivity" />

来自SplashActivity.java

Handler handler;

@Override
public void onCreate(Bundle savedInstanceState) {
            handler = new Handler();
            handler.postDelayed(new Runnable() {
                @Override
                public void run() {
                    Intent intent = new Intent(SplashActivity.this, MainActivity.class);

                    startActivity(intent);
                    finish();
                }
            }, Constant.SPLASH_SCREEN_TIMEOUT);
}

我想念什么? 需要更多代码进行解释吗?

1 个答案:

答案 0 :(得分:1)

从所有活动中删除此android:noHistory="true"

值为"true"表示该活动将不会留下历史痕迹。它不会保留在任务的活动堆栈中,因此用户将无法返回该任务