UWP应用在非调试模式下崩溃

3

我的目标:

我正在开发UWP应用程序,要求用户使用他们的Google/Facebook凭据登录以访问应用程序的功能。为此,我使用了一个Auth0客户端进行OAuth身份验证。登录成功后,用户应该被导航到MainPage.xaml页面。在调试应用程序时,这个过程完美无缺,没有任何问题。

XAML:

<Button Margin="0,45,0,0" Grid.Row="6" HorizontalAlignment="Center" Name="GoogleSignIn" Content="Sign in with Google+" Tag="google-oauth2" Click="OAuthSignin" />
<Button Margin="0,15,0,0" Grid.Row="7" HorizontalAlignment="Center" Name="FacebookSignIn" Content="Sign in with Facebook" Tag="facebook" Click="OAuthSignin" />

代码后台:

private async void OAuthSignin(object sender, RoutedEventArgs e)
{
    string oauthprovider = ((Button)sender).Tag.ToString();
    try
        {
            Auth0User user = await App.auth0.LoginAsync(oauthprovider);

            if (user != null)
            {
                //Add user to credential locker
            }
        }
        catch(Exception ex)
        {
            ex.ToString();
        }
        finally
        {
            var nav = Template10.Common.BootStrapper.Current.NavigationService;
            nav.Navigate(typeof(Views.MainPage));
            nav.ClearHistory();
        }
}

问题出在哪里:

应用程序部署到模拟器后,我停止调试并通过点击磁贴来启动应用程序。我进入登录页面,输入我的凭据。当我按下回车键时,我看到它返回到登录页面并很快崩溃。如果我重新打开应用程序,我会看到我已经登录,并且它会直接带我到MainPage.xaml(这是应用程序的逻辑)

让我担心的事情:为什么在非调试模式下它的行为不同?这使我受限,因为我无法设置断点以确定导致崩溃的原因。

非常感谢您的任何意见。

P.S:我尝试将应用程序部署到 Lumia 640 上,也遇到了同样的问题(这意味着与模拟器无关)。桌面版本工作正常(即使在调试之外)。


尝试为调试配置启用“使用.NET本机工具链进行编译”,然后查看是否仍会崩溃:http://stackoverflow.com/questions/34829321/install-an-appx-or-appxbundle-in-a-windows-phone-10/34836628#34836628 - Gaurav
1
调试和发布之间的一个区别是,PLM被禁用,并且应用程序不会暂停(我也会在那里进行搜索,因为您已经说在桌面上没有问题-在桌面应用程序不会暂停)。您的登录过程是什么样的?您使用Web身份验证代理吗?在调试模式下,如果需要暂停您的应用程序,请查看此答案:参考这个回答 - Romasz
@Romasz,Auth0客户端使用WebAuthenticationBroker。暂停应用程序不是问题。当我没有调试并启动应用程序(在模拟器或真实手机上)时,在等待App.auth0.LoginAsync(oauthprovider)语句之后不久它就会崩溃。 - Jason Bourne
1个回答

0

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