xamarin.forms - MSAL 不运行 WebView 进行登录
问题描述
我在 Xamarin.Forms 中使用 MSAL 对 B2C 中的用户进行身份验证。MSAL 4.0.0 和 Xamarin.Forms 3.2.0.871581 的版本。我注意到我的 MSAL 没有为登录用户运行 WebView。我尝试了几种解决方案,但问题仍然存在:-(如果有人遇到这样的问题?提前致谢
解决方案
试试这个使用 MSAL v4 的 B2C Xamarin 示例。您可以使用自己的 B2C 用户旅程值淹没 B2CConstants.cs中的值,并且该示例应该可以正常工作。
请注意,对于 Android,您需要按照示例中的操作设置 Activity ,.WithParentActivityOrWindow(ParentActivityOrWindow)
因此一旦发生交互,令牌就会返回。基本上是这样的:
var authResult = AcquireTokenInteractive(scopes)
.WithParentActivityOrWindow(parentActivity)
.ExecuteAsync();
此外,在 Android 上,您将需要覆盖 的OnActivityResult
方法Activity
,如示例中所示
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
base.OnActivityResult(requestCode, resultCode, data);
AuthenticationContinuationHelper.SetAuthenticationContinuationEventArgs(requestCode, resultCode, data);
}
推荐阅读
- mysql - MySQL 查询优化与大型数据库上的子查询和 JOIN
- facebook - 如何将 Instagram 贴纸导入 spark ar?
- javascript - 无法在 heroku 服务器上获取/注册错误
- mysql - SQL查询,根据行是否存在选择顶部结果或底部结果
- python - 无法在 Python 中使用我的类实例进行多处理
- arduino - 一个文本中有 2 个变量和 1 个字符串
- flutter - 颤振:从颤振应用程序构建apk失败
- scala - 异常在 scala shell 中被截断
- r - graphviz / DiagrammeR - 子图从上到下,然后从左到右
- amazon-web-services - AWS CodePipeline 无法将 EFS 附加到多容器 Docker Elastic Beanstalk