android - 应用程序从深层链接启动,然后从启动器再次激活重新启动 Activity

标签 android android-activity deep-linking

以下情况:

  • 应用从深层链接(短信)启动并启动 MainActivity
  • 用户在打开 SecondActivity 的应用中按下开始按钮
  • 应用进入后台
  • 用户在启动器中再次按下应用程序图标 => 这里我希望 SecondActivity 仍然处于 Activity 状态。但是,MainActivity 会重新启动。

尝试使用“singleTop” Activity 模式 - 没有区别。

SecondActivity 是从 MainActivity 启动的,没有任何特殊的 Intent 标志,普通的 startActivity()

<activity
    android:name=".MainActivity"
    android:label="@string/app_name"
    android:screenOrientation="portrait"
    android:alwaysRetainTaskState="true"
    android:launchMode="singleTop"
    android:windowSoftInputMode="adjustResize">
    <intent-filter>
        <action android:name="android.intent.action.MAIN"/>
        <category android:name="android.intent.category.LAUNCHER"/>
    </intent-filter>
    <intent-filter>
        <action android:name="android.intent.action.VIEW"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <category android:name="android.intent.category.BROWSABLE”/>

最佳答案

原来有两个原因:

  1. 从深层链接启动应用创建了单独的应用实例 => 通过指定“singleTask”解决
  2. SecondActivity 在某个时候被销毁,这解释了为什么从图标再次启动应用程序会出现 MainActivity 屏幕

感谢所有评论者提供有用的提示!

关于android - 应用程序从深层链接启动,然后从启动器再次激活重新启动 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49324766/

相关文章:

java - Activity 必须导出或包含 Intent 过滤器

android - 如何在 android 中使用深层链接打开应用程序并获取参数?

android - firebase 应用索引和应用链接之间的区别

android - 如何在maven上发布一个库项目?

android - 如何在 Android 中使用 Google Book API 下载/搜索图书

android - 加载 Activity 时显示进度条

java - 关闭其他 Activity 中的 Activity ?

android - 无法在 RecyclerView.ViewHolder 中添加自定义字体

android - 深层链接导致应用程序的多个实例打开

android - 来自谷歌云存储的视频流