Firebase电话已验证 [英] Firebase Phone Verified

查看:33
本文介绍了Firebase电话已验证的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我可以调用Firebase中的方法来检查用户是否已验证电话号码吗?我已经可以正常进行所有工作(用户输入国家/地区代码/电话号码,自动输入OTP代码并开始适当的活动),但是我想检查用户是否已验证电话号码,以防万一他没有我想要的信息禁止他进行某些活动.

Is there method in Firebase I can call to check if user has verified phone number? I already have everything working out properly (user enters country code/phone number, automatically gets entered OTP code and starting proper activity), but I would like to check if user has verified phone number, in case he doesn't have I want to forbid him from accessing certain activity.

对于电子邮件,有 isEmailVerified(),但是对于电话验证,只有 getPhoneNumber 方法.

For email, there is isEmailVerified() but for phone verification there is only getPhoneNumber method.

推荐答案

我不确定您的应用程序是否正常运行,但据我了解:用户可以在未经身份验证的情况下使用您的应用程序.但是,您希望未经身份验证的用户只能访问有限数量的功能.

I'm not sure about the flow of your app but from what I understand: Users can use your app without being authenticated. However, you want unauthenticated users to have access to only a limited number of features.

您在评论中提到,无论以前使用什么应用程序,用户都必须在每次新安装的应用程序中验证其电话号码.因此,您可以像这样使用SharedPreferences来发挥自己的优势:

You mentioned in the comments that users are required to verify their phone number on every fresh install of the app regardless of previous use. Therefore, you can use SharedPreferences to your advantage like this:

  • 每次用户验证其电话号码时,请将一个布尔值(true)保存到SharedPreferences.
  • 当用户想要访问仅对经过身份验证的用户可用的功能时,请检查已保存的SharedPreferences布尔值以检查该用户是否经过身份验证.
  • 用户注销时,请记住删除/重置SharedPreferences布尔值.
// create a SharedPreferences object and reference it with "AUTH_STATUS"
SharedPreferences sharedPreferences = getSharedPreferences("AUTH_STATUS", Context.MODE_PRIVATE);

// create an editor object from your sharedpreferences object
SharedPreferences.Editor editor = sharedPreferences.edit();

// save your boolean value to a reference called "status"
editor.putBoolean("status", true);

// save changes
editor.apply();

要检索保存的布尔值,可以执行以下操作:

To retrieve a saved boolean value, you can do something like this:

// create a SharedPreferences object and reference it with "AUTH_STATUS"
SharedPreferences sharedPreferences = getSharedPreferences("AUTH_STATUS", Context.MODE_PRIVATE);

// get saved boolean value, default value should be false
boolean ab  = sharedPreferences.getBoolean("status", false);

要删除/重置SharedPreferences布尔值,只需将布尔值设置为false即可,如下所示:

To delete/reset the SharedPreferences boolean value, simply set the boolean value to false as shown below:

// create a SharedPreferences object and reference it with "AUTH_STATUS"
SharedPreferences sharedPreferences = getSharedPreferences("AUTH_STATUS", Context.MODE_PRIVATE);

// create an editor object from your sharedpreferences object
SharedPreferences.Editor editor = sharedPreferences.edit();

// save your boolean value to a reference called "status"
editor.putBoolean("status", false);

// save changes
editor.apply();

这篇关于Firebase电话已验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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