【发布时间】:2010-01-14 00:53:25
【问题描述】:
假设我从主屏幕启动我的应用程序,浏览一些活动,然后按下主屏幕键并在 Gmail 应用程序中执行其他操作。
检查完邮件后,我再次按主键退出 Gmail 应用程序,然后再次单击主屏幕上我的应用程序图标返回。
当我返回我的应用程序时,我希望它返回到我上次参加的活动,而不是开始一个全新的会话。我整天都在想办法解决这个问题。
我的第一个活动清单如下:
<activity android:name=".Main"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:alwaysRetainTaskState="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
类别属性 LAUNCHER 使我的应用程序始终从活动 Main 开始,所以我不知道如何恢复最后一个活动。人们告诉我使用 sharedpreferences 来保存最后一个活动并将其加载到 Launch,但我不认为它打算这样做,因为它不是很优雅。
【问题讨论】:
-
您的清单看起来不错;它应该按您的预期工作。你有没有机会只在调试器下看到这个,就像这个几乎相同的问题? stackoverflow.com/questions/2061143/…
-
当我得到你的答案时我想通了,它与 Eclipse 调试无关,而是与运行配置有关:我将启动操作设置为:在 Android 下启动默认活动标签。我把它改成了“什么都不做”,它成功了。不敢相信我花了这么长时间才意识到这一点!谢谢
-
你应该在你的答案中添加一个答案。