gpt4 book ai didi

android - Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK Android 不工作

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:06:04 24 4
gpt4 key购买 nike

好吧,那是我的问题。

我需要,当用户按下返回底部时,删除所有打开的 Activity 的堆栈:

@Override
public void onBackPressed(){
Intent i = new Intent(context, CrisolMainApp.class);
i.putExtra(CrisolMainApp.CERRAR_APP, true);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);
}

关键是这适用于我的大部分手机,但昨天我尝试使用 Samsung Galaxy Mini (android 2.3.3) 但它不工作!!它不会删除 Activity 堆栈。

谁知道为什么?

编辑:我正在查看文档,我发现 API 11 上添加了“Intent.FLAG_ACTIVITY_CLEAR_TASK”(我的三星 Galaxy Mini 适用于 Android 2.3.3,因此,API 10)...... ..我不知道,但我想这就是问题所在。

任何人都知道如何让它以相同的方式为小于 11 的 API 工作?

我尝试添加这些标志,但它也不起作用:

@Override
public void onBackPressed(){
Intent a = new Intent(this, CrisolMainApp.class);
a.putExtra(CrisolMainApp.CERRAR_APP, true);
a.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
a.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
a.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(a);
finish();
}

我也试过:

@Override
public void onBackPressed(){
Intent a = new Intent(this, CrisolMainApp.class);
a.putExtra(CrisolMainApp.CERRAR_APP, true);
a.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
a.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(a);
finish();
}

最佳答案

一个简单的修复应该是将 xml 属性 android:noHistory="true" 添加到您的所有 Activity 中,这意味着一旦用户离开该 Activity ,它就会消失,并且不会存储返回堆栈

关于android - Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK Android 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14341294/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com