0

有没有一种解决方案可以让我在物理设备上运行和测试应用生命周期?如果没有使用“生命周期事件”内置的Visual Studio 2015?我想能够在按下设备上的物理按钮(箭头返回,窗口图标等)后,将适当的生命周期方法称为暂停和恢复,并且如果可能,请获得有关调用此方法的消息:没有生命周期事件的物理设备上的应用生命周期

private async void Application_Suspending(object sender, SuspendingEventArgs e) 
{ 
    Debug.WriteLine("METOD: Suspending"); 

} 

我只是想知道在应用程序测试期间,哪种方法当前在物理设备上发现自己。

例如,Android操作系统,当我做:

@Override 
protected void onPause() { 
    super.onPause(); 
    System.out.println("METOD: onPause");   
} 

我看到消息“METHODS:的onPause”当我运行在物理设备上的应用程序。

+0

写入文件而不是控制台 – Bart

回答

1

根据UWP Application Lifecycle,一旦用户切换到另一个应用程序,该应用程序将被暂停。 但是,切换后暂停事件不会立即触发,因此在调用方法之前可能会有几秒钟的延迟。

当用户将应用程序移动到后台时,Windows会等待几秒钟,以查看用户是否会立即切换回应用程序,以便在他们转换时快速转换。如果用户在此时间窗口内未切回,则Windows会暂停应用程序。

此外,当您连接了Visual Studio调试器时,事件将不会被触发。

关于使用Visual Studio进行调试的注意事项:* Visual Studio阻止 Windows挂起连接到调试器的应用程序。此 用于允许用户在运行应用程序 时查看Visual Studio调试用户界面。当您调试应用程序时,您可以使用Visual Studio向其发送暂停事件 。确保显示*调试位置工具栏为 ,然后单击暂停图标。

+0

我知道Application Lifecycle是如何工作的。但是我需要在真实设备上测试它,而不使用Visual Studio“生命周期事件”。我想知道发生了什么,例如:当我按下按钮ON/OFF ...后退箭头等,我不能在模拟器上测试这些选项:/ – Icero

+1

理解。你绝对可以做到这一点,但没有附加Visual Studio Debugger。将您的Debug.WriteLine语句更改为写入文件或某事的日志记录机制。您可以执行测试并读取日志。 – AlexDrenea

+0

这就是我以为:(特别是我买了Lumia,因为我认为只有这样我才能测试physycal按钮,但仍然不起作用。谢谢MICROSOFT .... – Icero