Windows Phone 多个应用实例问题

4

在Windows Phone 7.5上是否可以运行同一应用程序的多个实例?当我停用当前实例并尝试通过“开始”菜单运行新实例时,后台应用程序会消失,并且新实例会在前台以初始屏幕启动。

这样的“重新启动”之间是否保留应用程序状态?


你尝试过使用多个WP7模拟器实例吗? - coder
3个回答

2

是的,但是当应用程序变得模糊时状态可以被保存,因此当您启动一个新实例(杀死以前的实例)时,您只需要加载先前的状态即可! - Pedro Lamas
当然可以手动保存状态,但我认为问题是是否自动保存状态。不过我可能误解了问题。 - Per Kastman
你指的是哪个状态?ApplicationStateService.Current.State?还是隔离存储? - Marc Andreson
我认为你是正确的,@KMan,我只是在添加更多信息! :) - Pedro Lamas
2
@MarcAndreson 应用程序状态不是以这种方式维护的;您应该使用 IsolatedStorage 来保存并加载应用程序的先前状态。 - Pedro Lamas
那么为什么MSDN手册会说,当用户启动新实例时,我必须确保它是一个新实例,即使我没有访问先前的状态? - Marc Andreson

2
当您启动应用程序实例并使用“启动”按钮将其停用时,您有机会保存应用程序状态(您可以使用Deactivated事件来执行此操作)。
因此,当从菜单启动新实例时,应用程序的先前实例将被终止,并且此时您只需重新加载先前保存的状态(如果有的话!)。

据说当用户启动新实例时,我必须让用户感觉这是一个全新的实例,那么我如何检测这是一个新实例,而不是从墓碑状态激活的实例呢? - Marc Andreson
你可以使用“应用程序已激活”事件来检查应用程序是否来自墓碑状态;请查看此处的图片(http://msdn.microsoft.com/en-us/library/ff817008(v=vs.92).aspx)。 - Pedro Lamas
我知道这张图片,我只是想知道ApplicationState是否被保留,或者一个新的实例会在启动事件和空的应用程序状态以及页面状态下开始自己的生命周期。 - Marc Andreson

1
据我目前的经验,每个应用程序只能有一个实例。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接