title: Cannot create PhoneAuthCredential without either verificationProof, sessionInfo, temporary proof, or enrollment ID
body: <p>I'm working on <strong>firebase</strong> phone authentication, after receiving code on my phone number the code jumps to <code>verifysignincode()</code> method, it fails to create <code>phoneAuthCredentials</code>. The exception which program catches is "Cannot create <code>PhoneAuthCredential</code> without either <code>verificationProof</code>, <code>sessionInfo</code>, temporary proof, or enrollment ID."</p>
  
  <p>This is my send code method:</p>
  
  <pre><code>    public void send_code(){
      mCallbacks = new PhoneAuthProvider.OnVerificationStateChangedCallbacks() {
          @Override
          public void onCodeSent(@NonNull String s, @NonNull PhoneAuthProvider.ForceResendingToken forceResendingToken) {
              super.onCodeSent(s, forceResendingToken);
              Log.d("code", "onCodeSent:" + s);
              verificationID=s;
          }
          @Override
          public void onVerificationCompleted(@NonNull PhoneAuthCredential phoneAuthCredential) {
  
          }
          @Override
          public void onVerificationFailed(@NonNull FirebaseException e) {
              Toast.makeText(PhoneAuthentication.this, e.getMessage(), Toast.LENGTH_SHORT);
          }
      };
      mPhoneAuthProvider.verifyPhoneNumber(
              user_contact , 60, TimeUnit.SECONDS, PhoneAuthentication.this, mCallbacks
      );}
  </code></pre>
  
  <p>This is my verify sign in method:</p>
  
  <pre><code>    public void verifySignInCode(String code){
      try {
          PhoneAuthCredential credential = PhoneAuthProvider.getCredential(verificationID, code);
          signInWithPhoneAuthCredential(credential);
      }catch (Exception e){
          Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_SHORT).show();
  
      }
  }
  </code></pre>
  
  <p>this is my signin method with phone credentials:</p>
  
  <pre><code>    private  void signInWithPhoneAuthCredential(PhoneAuthCredential credential){
      mFirebaseAuth.signInWithCredential(credential)
              .addOnCompleteListener(this, new OnCompleteListener&lt;AuthResult&gt;() {
                  @Override
                  public void onComplete(@NonNull Task&lt;AuthResult&gt; task) {
                      if(task.isSuccessful()){
  
                          startActivity(new Intent(PhoneAuthentication.this, UserHome.class));
                      }
                      else {
                          Log.d("error:", task.getException().getMessage());
  
                      }
                  }
              });
  }
  </code></pre>
  
  <p>ERROR:</p>
  
  <blockquote>
    <p>Cannot create PhoneAuthCredential without either verificationProof,
    sessionInfo, temporary proof, or enrollment ID.</p>
  </blockquote>