这真的是使用 Xamarin 对 Google 平台的用户进行身份验证的过程吗?

Is this really the process for authenticating users with the Google platform using Xamarin?

我正在学习位于此处的教程:https://developer.xamarin.com/guides/xamarin-forms/cloud-services/authentication/oauth/

我进入了标题为:呈现 Sign-In 用户界面的步骤。 它说,"When the Login method is invoked, the sign-in user interface is presented to the user in a tab from the device's web browser."

这真的是使用 Xamarin 时的流程吗? 因为我下载和玩过的其他应用程序不会打开浏览器然后打开一个新标签让我选择选择哪个帐户。这些应用程序会在应用程序顶部弹出一个小页面,并允许我 select 一个帐户。 如果此 Xamarin 进程不同,我将不会在开发我的应用程序时使用它。请帮我解决这个问题。谢谢。

没有"Xamarin's way of oAuth"。

oAuth 是关于通过 Google、Facebook、Twitter 等第 3 方对用户进行身份验证。ost 经常使用不同的 oAuth 流程:隐式授权和授权代码授权。对于移动应用程序,隐式流程很常见,因为授权代码流程涉及应用程序保守移动设备无法真正保证的秘密。为了更好地概述这些流程,我可以从 Xamarin.University.

推荐这个 lecture

无论您使用哪种底层开发堆栈,这些流程都是相同的。

您所指的文档正在使用一个库来帮助使用这些流程:Xamarin.Auth。事实上,您根本不必使用这个库。该库有助于存储令牌、发送包含所需令牌的请求、检测端点重定向等。使用该库的一部分是在显示第 3 方供应商登录表单的地方呈现 UI。

这是你打电话时所做的:

var presenter = new Xamarin.Auth.Presenters.OAuthLoginPresenter();
presenter.Login(authenticator);

呈现 UI 的实际实现是平台特定的。在 iOS UI os 上,如果您是这样编码的,则模态显示。如果您更改此代码以将 UI 显示为浮动在现有内容之上的小弹出窗口,您当然可以这样做。对于任何给定平台都是如此。