Xamarin使用Google身份验证表单应用程序抛出disallowed_useragent错误

时间:2017-04-20 10:53:39

标签: xamarin.forms google-authentication

我正在开发Xamarin Forms PCL应用程序,我正在尝试将Google身份验证与Xamarin.Auth组件集成。但遗憾的是,在尝试向Google进行身份验证时,我遇到了 disallowed_useragent 错误。使用Facebook和其他社交媒体身份验证,一切正常。

任何帮助对我来说都很棒。

2 个答案:

答案 0 :(得分:0)

问题出现是因为谷歌最近将其政策更改为不允许WebView(和其他嵌入式浏览器)成为授权过程的一部分。应该使用新的原生浏览器:Android上的CustomTabs和iOS上的Safari(抱歉,我忘了名字)。

解决问题:
1.将Xamarin.Auth更新为最新版本
2.安装Xamarin.Support.CustomTabs NuGet包(我认为它安装了最新的Auth版本)
3.在Authenticator构造函数中为true属性添加IsUsingNativeUI值 4.调用GetUI()函数并将其值转换为CustomTabsIntent.Builder
5.使用builder.Build().LaunchUrl()功能
拨打Authenticator.GetInitialUrlAsync()

希望它有所帮助!

答案 1 :(得分:0)

disallowed_useragent意味着(最有可能)app正在使用自2017-04-20以来被禁止的嵌入式WebView。

Xamarin.Auth自2017-03-2x nuget版本v.1.4.x起支持CustomTabs和SafariView控制器。版本1.5.0集成了表单支持。