使用Xamarin.Forms和.net Standard进行Firebase电子邮件/密码身份验证(VS2017) [英] Firebase Email/Passord Authentication using Xamarin.Forms with .net Standard (VS2017)

查看:94
本文介绍了使用Xamarin.Forms和.net Standard进行Firebase电子邮件/密码身份验证(VS2017)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

Is Firebase Email/Password Authentication is possible to develop with common code for Android and IOS with Common Code .net Standards? I have Designed Simple Login page with .XAML format but i dont find any samples related to integration of Firebase auth with Xamarin.Forms with .net standard code share. If this strategy is possible can provide me with sample integration will be helpful for further understanding.

推荐答案

是的,绝对有可能.
由于只有特定于平台的Xamarin.Firebase NuGet软件包,因此我们将必须创建一个简单的抽象层,如下所示:

Yes it is definitely possible possible.
Since there are only platform specific Xamarin.Firebase NuGet packages, we will have to create a simple abstraction layer that will look like this:

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

每个平台都必须单独实现此接口.Android实施:

Each platform will have to implement this interface separately. Android implementation:

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 .有关更多详细信息,请查看有关此内容的详细文章及其源代码在此处.

Now you can simply use IFirebaseAuthenticator on the XF level. For more details you can check a detailed article about it and its source code is available here.

这篇关于使用Xamarin.Forms和.net Standard进行Firebase电子邮件/密码身份验证(VS2017)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆