当前位置: 首页 > 知识库问答 >
问题:

来自Firebase的短信代码不匹配

微生学
2023-03-14

我使用Firebase电话auth创建了一个号码发送活动和确认/otp片段。当定向到确认页面时,来自Firebase的6位短信代码会发送到输入的电话号码,但无论我做什么,输入的edittext和来自Firebase的代码都不匹配。当我将编辑文本留空时,它会重定向到我想要的片段,就好像它是正确的一样。你能帮我我在哪里犯了错误吗?我在确认片段中的代码如下;

class FragmentRegisterTelOnay:Fragment(){var comingNumber=”“lateinit var auth:FirebaseAuth lateinit var callbacks:PhoneAuthProvider.OnVerificationStateChangedCallbacks var verificationID=”“var comingCode:String=”“override fun onCreateView(充气机:布局扁平机,容器:ViewGroup?、savedInstanceState:Bundle?):看法{var view=inflater.inflate(R.layout.fragment_register_activity_phone,container,false)view.tvkulanicitelno.setText(“90”comingNumber)auth=Firebase.auth setupCallBack()

  view.ileriButton.setOnClickListener {
      if (comingCode.equals(editTextOnayKodu.text.toString())){

        EventBus.getDefault().postSticky(EventBusDataEvents.KayitBilgileriniGonder("+90$comingNumber",null,verificationID,comingCode))
        val transaction = requireActivity().supportFragmentManager.beginTransaction()
        transaction.replace(R.id.telefonOnayKod,FragmentRegisterDetailPhone())
        transaction.addToBackStack("TelOnayfragmentEklendi")
        transaction.commit()}
        else{
          Toast.makeText(activity,"Wrong Code",Toast.LENGTH_LONG).show()
      }

  }

    val options = PhoneAuthOptions.newBuilder(auth)
        .setPhoneNumber("+90"+comingNumber)       // Phone number to verify
        .setTimeout(60L, TimeUnit.SECONDS) // Timeout and unit
        .setActivity(requireActivity()) // Activity (for callback binding)
        .setCallbacks(callbacks)          // OnVerificationStateChangedCallbacks
        .build()
    PhoneAuthProvider.verifyPhoneNumber(options)

    return view
}

private fun setupCallBack() {
    callbacks = object : PhoneAuthProvider.OnVerificationStateChangedCallbacks() {

        override fun onVerificationCompleted(credential: PhoneAuthCredential) {
            if(!credential.smsCode.isNullOrEmpty()){
            comingCode = credential.smsCode!!
            progressBarOnayKod.visibility = View.GONE
            Log.e("Success","on verificationcompleted sms: " + comingCode)}
            else{
                Log.e("Error","onverification has not completed")
            }
        }

        override fun onVerificationFailed(e: FirebaseException) {
            Log.e("Error: ",e.localizedMessage)
            progressBarOnayKod.visibility = View.GONE
        }

        override fun onCodeSent(verificationId: String,token: PhoneAuthProvider.ForceResendingToken) {
            verificationID = verificationId
            progressBarOnayKod.visibility = View.VISIBLE
            Log.e("Codesent","oncodesent worked")
        }
    }
}

@Subscribe (sticky = true)
internal fun onTelefonEvent(kayitBilgileri: EventBusDataEvents.KayitBilgileriniGonder){
    comingNumber = kayitBilgileri.telNo.toString()
    Log.e("test",comingNumber)
}

override fun onAttach(context: Context) {
    super.onAttach(context)
    EventBus.getDefault().register(this)
}

override fun onDetach() {
    super.onDetach()
    EventBus.getDefault().unregister(this)
}

}

共有1个答案

谷梁弘深
2023-03-14

首先将sha1设置为Firebase设置并生成googleconfig.json然后添加到poject的根目录并添加到build.gradle依赖项。它会正常工作

资源:https://github.com/firebase/quickstart-android/issues/283

 类似资料:
  • 我将我的应用程序从使用数字电话身份验证迁移到了新的Firebase电话身份验证,但是当我测试我的应用程序时,我在注销我的用户时遇到了麻烦(已经修复了这个问题),所以我就把它从控制台的“用户列表”中删除了,但是现在每次我尝试用那个电话号码登录时,它不会给我发送带有代码的短信,除了这个号码之外,其他任何号码都能正常工作。有人知道我该怎么解决吗?

  • 问题内容: 我只想从Web应用程序中使用PHP发送SMS。谁能告诉我该怎么做?我需要为此做些什么? 问题答案: 我不知道这是否适用于您,但是为了省钱我做了很多次,就是在个人资料中询问用户他的载体是什么,然后尝试与匹配。本质上,许多运营商/大多数运营商都将电子邮件地址连接到电话号码,您可以轻松地将短信发送到该号码。例如,如果您拥有ATT,并且电话号码是786-262-8344,则发送至7682628

  • 我目前正在使用Adruino Uno构建一个项目,以收集温度和湿度等天气数据,然后将这些数据传递到Azure IOT中心,然后对消息进行处理并再次存储到Azure中的SQL数据库。最后,数据会显示在一个网站上,用户可以注册并查看我收集的天气数据。 我正在尝试在系统中实现SMS通知,这样,如果温度达到某个阈值(例如0摄氏度),系统上的用户将收到SMS消息,通知他们寒冷的温度。 我的问题是SMS消息的

  • 我有2个WordPress短代码正在使用: 一章。[章节名称="开始"]...内容...[/章] 目录[toc][/toc]。toc需要显示章节的简单列表。 规范: 一篇文章可以有很多章节。 帖子中可以有一个、两个或没有toc短代码。 toc可以在章节之前或之后,也可以在章节之前和之后。这取决于帖子作者,所以我事先不知道。 我不能使用嵌套的简码,因为这些对作者来说很难使用。 我想到了使用静态toc

  • 本文向大家介绍php实现短信发送代码,包括了php实现短信发送代码的使用技巧和注意事项,需要的朋友参考一下 卓望的短信发送。PHP格式。都要不习惯用xml传输数据格式了 标签: <无> 1. [代码][PHP]代码     以上所述就是本文的全部内容了,希望大家能够喜欢。

  • 本文向大家介绍python正则中最短匹配实现代码,包括了python正则中最短匹配实现代码的使用技巧和注意事项,需要的朋友参考一下 下面从一个例子入手: 利用正则表达式解析下面的XML/HTML标签: 希望自动格式化重写为: composer: Wolfgang Amadeus Mozart author: Samuel Beckett city: London 一个代码是这样的形式: 这个代码运