Microsoft身份验证库(MSAL)永远不会从Android上的AcquireTokenAsync()返回

Nic*_*sen 6 xamarin.android xamarin azure-active-directory xamarin.forms azure-ad-msal

我有一个Xamarin.Forms iOS/Android应用程序,必须针对Microsoft Azure B2C AD对用户进行身份验证.

我添加了Microsoft.Identity.Client NuGet并使用它进行身份验证.

它在iOS上工作正常,但在Android上,相同的代码永远不会从AcquireTokenAsync()返回.

登录UI显示为它应该和接受的用户名和密码,并且MSAL库提供的UI会解雇它,但是调用await AcquireTokenAsync()永远不会返回.

代码位于应用程序核心项目的PCL中.

我尝试过Android 4,5和6设备.

我知道MSAL仍处于alpha状态我只是希望得到确认,如果由于这个或我可能做错了什么.

Nic*_*sen 11

显然我需要在MainActivity.cs中使用这段代码,我在他们的例子中忽略了这一点:

    protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
    {
        base.OnActivityResult(requestCode, resultCode, data);
        AuthenticationAgentContinuationHelper.SetAuthenticationAgentContinuationEventArgs(requestCode, resultCode, data);
    }
Run Code Online (Sandbox Code Playgroud)