通过 Intent 启动应用程序,然后按后退按钮也会关闭父应用程序

时间:2021-03-23 11:24:33

标签: android flutter dart

当用户单击按钮时,我正在启动 Gmail 应用程序。这是我在android上打开gmail应用程序的代码 我正在使用 android_intent 包。

const intent = AndroidIntent(
                            action: 'android.intent.action.MAIN',
                            category: 'android.intent.category.APP_EMAIL',
                          );
                          intent.launch().catchError((e) {
                            context.showMessageDialog(e.toString());
                          });

它可以正确打开 gmail 应用程序,现在当我单击 android 中的后退按钮时,它会关闭 gmail 以及我的应用程序。我不希望它关闭我的应用程序。我希望 gmail 作为不同的应用程序打开。我不能使用 url_launcher 包,因为它用于发送电子邮件。我的用例只是打开用户的电子邮件应用程序,以便用户可以验证我在注册期间从后端发送的电子邮件。

2 个答案:

答案 0 :(得分:0)

这对我有用:

private fun openGmail() {
    val intent = requireContext().packageManager.getLaunchIntentForPackage("com.google.android.gm") //"leanback" version is for TV

    startActivity(intent)
}

答案 1 :(得分:0)

AndroidManifest.xml 中将 android:launchMode="singleTop" 更改为 android:launchMode="singleInstance"