当活动为onPause时,恢复意图接收的app(活动)

时间:2014-10-13 11:03:51

标签: android android-activity activity-lifecycle

以下是我的情景:

  • 用户打开应用并使用它=>该应用程序位于其中一个屏幕
  • 用户使用Home键
  • 在后台移动应用程序
  • 用户开始浏览并浏览我的网站。随着网站,某些链接打开应用程序
  • 用户点击浏览器中的链接并启动应用程序,但即使活动是onPause,它仍未恢复,但重新开始,因此当前会话正在丢失。

我的主要活动是使用意图过滤数据,所以我添加了:

  <activity android:name=".HomeActivity"
            <intent-filter>
                <data android:scheme="myprop" />
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
            </intent-filter>
  </activity>

因此,当用户点击浏览器中的自定义网址时,我的应用会唤醒并启动活动。 正如我之前所说,如果我的HomeActivityonPause(意味着用户已经使用过它),则可以简单地恢复它(当然也会解析myprop参数),同时保持当前用户的进度?

1 个答案:

答案 0 :(得分:3)

您需要将活动的启动模式定义为单个实例。为此,请在Android Manifest中更新您的活动:android:launchMode="singleInstance"

之后,您的现有活动将被打开,您将收到Activity.onNewIntent(Intent intent)

的回调