gpt4 book ai didi

使用 Xamarin.Forms 和 .net Standard (VS2017) 的 Firebase 电子邮件/密码身份验证

转载 作者:行者123 更新时间:2023-12-01 22:09:01 25 4
gpt4 key购买 nike

Firebase 电子邮件/密码身份验证是否可以使用通用代码 .net 标准为 Android 和 IOS 开发通用代码?我设计了 .XAML 格式的简单登录页面,但我没有找到任何与 Firebase 身份验证与 Xamarin.Forms 与 .net 标准代码共享集成相关的示例。如果这个策略可行可以给我提供示例集成将有助于进一步理解。

最佳答案

是的,这绝对有可能。
由于只有平台特定的 Xamarin.Firebase NuGet 包,我们将不得不创建一个简单的抽象层,如下所示:

public interface IFirebaseAuthenticator
{
Task<string> LoginWithEmailPassword(string email, string password);
}

每个平台都必须单独实现此接口(interface)。安卓实现:

public class FirebaseAuthenticator : IFirebaseAuthenticator
{
public async Task<string> LoginWithEmailPassword(string email, string password)
{
var user = await FirebaseAuth.Instance.
SignInWithEmailAndPasswordAsync(email, password);
var token = await user.User.GetIdTokenAsync(false);
return token.Token;
}
}

iOS 实现:

public class FirebaseAuthenticator : IFirebaseAuthenticator
{
public async Task<string> LoginWithEmailPassword(string email, string password)
{
var user = await Auth.DefaultInstance.SignInAsync(email, password);
return await user.GetIdTokenAsync();
}
}

现在您可以在 XF 级别上简单地使用 IFirebaseAuthenticator。更多详情可以查看a detailed article about it其源代码可用here .

关于使用 Xamarin.Forms 和 .net Standard (VS2017) 的 Firebase 电子邮件/密码身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49607811/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com