Android:Otp autoread在向playstore发布应用程序后不起作用

Android:Otp autoread在向playstore发布应用程序后不起作用,android,api,sms,one-time-password,Android,Api,Sms,One Time Password,我正在做一个包含sms自动读取功能的android应用程序。它在调试和发布(已签名的apk)版本中工作得非常好。但是当它上载到playstore时,它就不工作了。我想这是因为散列键。服务器中更新了开发和发布散列键 我尝试了应用程序签名证书的keyhash转换方法(不知道是否正确) 但在运行第一个命令后,错误为:-“应答中的公钥和密钥库不匹配” 代码如下:- class RegisterActivity : AppCompatActivity(), GoogleApiClient.C

我正在做一个包含sms自动读取功能的android应用程序。它在调试和发布(已签名的apk)版本中工作得非常好。但是当它上载到playstore时,它就不工作了。我想这是因为散列键。服务器中更新了开发和发布散列键

我尝试了应用程序签名证书的keyhash转换方法(不知道是否正确)

但在运行第一个命令后,错误为:-“应答中的公钥和密钥库不匹配”

代码如下:-

   class RegisterActivity : AppCompatActivity(), 
   GoogleApiClient.ConnectionCallbacks,
    GoogleApiClient.OnConnectionFailedListener, 
     SMSBroadcastReciever.Listener {
   override fun onSMSReceived(otp: String) {
    if (smsBroadcast != null) {
  LocalBroadcastManager.getInstance(this).unregisterReceiver(smsBroadcast)
    }

    et1.setText(otp[0].toString())
    et2.setText(otp[1].toString())
    et3.setText(otp[2].toString())
    et4.setText(otp[3].toString())
    et4.setSelection(et4.text!!.length);
    Log.e("OTP Received", otp)
}

override fun onTimeOut() {

}
     override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)

    setContentView(R.layout.activity_otp)



    listOf(et1, et2, et3, et4).setOTPListeners()
    et1.requestFocus()
    vm = ViewModelProviders.of(this).get(RegisterVM::class.java)

    registerObservers(vm!!)
    otpVerifyBtn.setOnClickListener {
        hideKeyboard()
        submitOtp(vm!!)
    }
    mCredentialsApiClient = GoogleApiClient.Builder(this)
            .addConnectionCallbacks(this)

            .addApi(Auth.CREDENTIALS_API)
            .build()

    startSMSListener()

    smsBroadcast.injectListener(this)
    val intentFilter = IntentFilter()
    intentFilter.addAction(SmsRetriever.SMS_RETRIEVED_ACTION)


    applicationContext.registerReceiver(smsBroadcast, intentFilter)
    val mobNum = intent.getStringExtra(IntentKeys.MOBILE_NUMBER) ?: ""
    mobileNumberTV.text = getString(R.string.please_type_verification) + " 
   " + mobNum
  }
  private fun startSMSListener() {

    val client = SmsRetriever.getClient(this /* context */)
    val task = client.startSmsRetriever()
    task.addOnSuccessListener {

    }

    task.addOnFailureListener {

    }
}

@SuppressLint("LongLogTag")
private fun requestHint() {
    val hintRequest = HintRequest.Builder()
            .setPhoneNumberIdentifierSupported(true)
            .build()

    val intent = Auth.CredentialsApi.getHintPickerIntent(
            mCredentialsApiClient, hintRequest)

    try {
        startIntentSenderForResult(intent.intentSender,
                RC_HINT, null, 0, 0, 0)
    } catch (e: Exception) {
        Log.e("Error In getting Message", e.message)
    }

}

该应用程序在调试和已签名的apk版本中运行良好。但在发布到playstore后无法运行。有人能帮我找到答案吗?

GoogleapClient不推荐使用,抱歉,这不是原因。最后,我记录了密钥哈希并进行了更新。