我使用的是Xamarin.Forms 2.3.3.193和Prism.Forms 6.3.0 使用Absolute URI导航时,我的应用程序在 Windows 8.1 中崩溃
请参阅我的App导航流程。
1 - App.xaml.cs
if (!IsUserLoggedIn)
{
NavigationService.NavigateAsync("NavigationPage/LoginPage");
}
else
{
NavigationService.NavigateAsync("NavigationPage/HomePage");
}
2 - LoginPageViewModel
if (response.AuthStatus)
{
NavigationParameters navParams = new NavigationParameters();
await _navigationService.NavigateAsync("OTPPage", navParams);
}
3 - OTPPageViewModel
if (ValidOTP)
{
App.IsUserLoggedIn = true;
await _navigationService.NavigateAsync("app:///NavigationPage/HomePage");
}
当我尝试在OTP验证后导航到HomePage时,我的应用程序在OTPPageViewModel中崩溃。
请注意,相同的代码在Android和UWP中运行没有任何问题,但仅在Windows 8.1中崩溃
如果我使用
await _navigationService.NavigateAsync("HomePage");
该应用程序运行正常,但我能够导航回OTPpage,我必须限制。
如果我跳过OTPPage并直接从登录页面调用HomePage,如下所示,它正常工作。
4 - LoginPageViewModel
if (response.AuthStatus)
{
await _navigationService.NavigateAsync("app:///NavigationPage/HomePage");
}