如何从非主要活动退出 Kotlin 应用程序

播种纤维

我有一个具有以下结构的应用程序:

我有一个启动器 Activity -> MainActivity.kt,在它onCreateSplashScreen.kt.

在这里SplashScreen.kt,我从我的服务器下载数据,然后最后打开Dashboard.kt

在 中Dashboard.kt,每当我按回两次时,我想退出应用程序。

这就是我设置退出功能的方式

private fun quit(){
        if (lastBackPressed + 2000 > System.currentTimeMillis()){
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                this.finishAffinity()
            } else{
                this.finish()
                exitProcess(0)
            }
        }
        else Toast.makeText(
            context,
            "Press once again to exit!",
            Toast.LENGTH_SHORT
        ).show()
        lastBackPressed = System.currentTimeMillis()
    }

为此,我参考了以下问题:

然而,那里的所有解决方案,只能帮助我退出我的 Dashboard.kt

一旦Dashboard.kt退出,MainActivity再次启动并加载SplashScreen.kt,然后加载 Dashboard.kt(再次)。

有没有更好更有效的方法直接从Dashboard.kt活动中退出应用程序

哈什瓦尔丹·乔希

在应用程序的清单文件中,android:noHistory="true"在主活动中添加标志。这将允许您的应用程序打开 MainActivity,然后在调用另一个活动时将其从堆栈中删除。

例如在你的情况下:

MainActivity.kt

-> SplashScreen.kt

-> Dashboard.ktMainActivity.kt保留在堆栈中。)

如果您android:noHistory="true"在主要活动中添加标志,则会发生如下情况:

MainActivity.kt

-> SplashScreen.kt(MainActivity.kt将从堆栈中删除。)

-> Dashboard.kt

-> 在此处按两次,您将能够退出该应用程序。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从 Android 应用程序 A,如何在应用程序 B 中打开非主要活动?

如何从主要活动中按退键退出应用程序?

Android-扩展应用程序或运行主要活动

Android找不到应用程序的主要活动

如何在android studio中创建没有主要活动的应用程序?

启动应用程序时如何显示意图而不是主要活动

如何在应用程序的ImageView(主要活动)中从Web加载图像?

如何使用 Kotlin 清除 android 应用程序中的应用程序数据?

如何实现Firebase Google Sign to Kotlin应用程序

如何在Kotlin中关闭Android应用程序

如何模拟测试Kotlin Spring Boot 2应用程序

如何从 android studio 运行 kotlin 应用程序?

如何将 Kotlin 应用程序部署到 Heroku?

为什么我在“zxing”应用程序“Kotlin”上启动“OnPause”后我的应用程序退出

我如何确保我的Android应用程序始终在主要活动上启动,即使它崩溃了?

如何在Android上从另一个应用程序启动一个应用程序的主要活动

显示特定活动而不显示应用程序的主要活动

应用程序重新启动,从背景,而不是恢复以前的状态的主要活动

启动器和主要活动(在Java Swing应用程序中)

在应用程序图标上,单击“开始挂起的意图”,而不是主要活动

在我的基本计算器应用程序上的主要活动中出现错误

Android kotlin项目中的主要应用程序类在哪里?

Kotlin应用程序与Gradle应用程序插件

Kotlin应用程序,单击按钮以打开新活动-> IllegalStateException:findViewById不能为null

如何将数据从主要活动传递到Kotlin中的BroadcastReciever

Kotlin为JVM应用程序创建简单的位图图像文件(非Android)

如何在Kotlin上发布来自Android应用程序的文字和图像?

如何在Kotlin中定义应用程序类和静态变量

如何在Kotlin Android中正确声明应用程序类