Xamarin.Auth - Google 身份验证无法在浏览器中打开



我正在尝试使用Xamarin.auth在Android应用程序上进行身份验证。一段时间以前,Google制定了您无法在嵌入式Web视图中执行此操作的政策(出于完全有效的原因(。

我正在尝试在浏览器中打开帐户身份验证页面,但请继续获取嵌入式Web视图。我知道isUsingNativeUI在以下代码中需要为true

        _auth = new OAuth2Authenticator(clientId, string.Empty, scope,
                                        new Uri(Constant.AuthorizeUrl),
                                        new Uri(redirectUrl),
                                        new Uri(Constant.AccessTokenUrl),
                                        null,
                                        isUsingNativeUI = true);

在我的应用程序中的每个点,这总是等于true。

在其他地方,我的代码将其重定向到应该是浏览器:

        var authenticator = Auth.GetAuthenticator();
        Intent intent = authenticator.GetUI(this);
        this.StartActivity(intent);

无论如何,每当我尝试运行该项目时,我都会遇到可怕的403 disallyed_useragent错误。我缺少另一个要素吗?

据我所知,在构造函数中设置auth.IsUsingNativeUI = true应该决定在浏览器中必须打开它。我一直在跟随这个示例尝试调试,但没有成功。我什至把那个家伙的存储库拉到了我的机器上并运行了 - 重定向时的Intent变量几乎是相同的。

我可能会想念一些愚蠢的东西吗?还有什么问题?

我意识到这是一个古老的问题,但是我遇到了同样的问题。

您必须安装Xamarin.auth Nuget软件包的1.5.0.3版。最新的一个(现在版本1.7.0(无效。您还必须安装pclcrypto nuget软件包才能使该版本正常工作。

相关内容

  • 没有找到相关文章

最新更新