如何绕过Android Chrome的OAuth客户经理?

时间:2017-04-11 19:42:29

标签: android google-chrome google-oauth google-oauth2

我最近迁移了我的应用程序,通过Chrome Custom Tab向Google进行身份验证,而不是使用非系统帐户进行​​内部WebView身份验证。除非用户正在同步/登录Google Chrome应用程序上的任何Google / Gmail帐户,否则一切正常。

当用户在手机上登录Google Chrome时,ServiceLogin网址会路由到Google Chrome的系统帐户管理界面:

Chrome帐户管理的屏幕截图:

有没有办法让Chrome继续路由到身份验证屏幕?我查看了Google的网络服务器OAuth2实施文档,但没有找到可以路由到浏览器体验的查询参数。

编辑:这似乎发生在Android 7.1.1上,但不是7.0.0。

编辑2:

流程是:

  1. 用户在我的应用

  2. 我使用给定的URI发送Chrome自定义标签页意图(或ACTION_VIEW意图)。

  3. URI 应该重定向到预先填好的Google登录页面,或者如果用户在浏览器中使用该帐户登录,那么它应该是权限批准页面。

  4. 相反,在安装了Chrome的Android 7.1.1上,Chrome会将我重定向到本机帐户管理屏幕(如下图所示)。只有在我使用此设备上的任何Gmail / Google Apps帐户登录Chrome时,才会出现这种情况。

  5. 我不希望我的用户重定向到此帐户管理活动/屏幕。这实质上迫使用户将其身份验证的帐户添加为系统帐户,这似乎不是Google提出的合理要求。我正在寻找一种方法来避免Chrome吞噬帐户网页链接并将用户重定向到此原生帐户管理屏幕。

0 个答案:

没有答案