如何为Android Firebase手机身份验证设置回调?
我对firebase和android有点陌生,然后我在android上看到了firebase手机认证的新功能。我在看这份文件,对实现这份McCallbacks感到困惑。。有人能指引我吗?如何为Android Firebase手机身份验证设置回调?,android,firebase,firebase-authentication,Android,Firebase,Firebase Authentication,我对firebase和android有点陌生,然后我在android上看到了firebase手机认证的新功能。我在看这份文件,对实现这份McCallbacks感到困惑。。有人能指引我吗? 让我困惑的是,我不知道应该使用什么数据类型来分配回调。由于没有示例代码,我希望有人能够指导我。您应该使用PhoneAuthProvider.OnVerificationStateChangedCallbacks()。像这样: PhoneAuthProvider.getInstance().verify
让我困惑的是,我不知道应该使用什么数据类型来分配回调。由于没有示例代码,我希望有人能够指导我。您应该使用
PhoneAuthProvider.OnVerificationStateChangedCallbacks()
。像这样:
PhoneAuthProvider.getInstance().verifyPhoneNumber(
phoneNumber, // Phone number to verify
60, // Timeout duration
TimeUnit.SECONDS, // Unit of timeout
this, // Activity (for callback binding)
new PhoneAuthProvider.OnVerificationStateChangedCallbacks() {
@Override
public void onVerificationCompleted(PhoneAuthCredential phoneAuthCredential) {
}
@Override
public void onVerificationFailed(FirebaseException e) {
}
});
然后你就可以覆盖你需要的另一个了。我相信这解决了我的问题
submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String phoneNum = editText.getText().toString();
Toast.makeText(MainActivity.this, phoneNum, Toast.LENGTH_SHORT).show();
verifyPhone(phoneNum,mCallBacks);
}
});
我尝试了一种方法来处理点击的按钮,我不知道为什么,但它奏效了。。
尝试传递Activityname,而不是在verifyPhoneNumber(..)方法中传递“this”。这将在verifyPhoneNumber方法中的TimeUnit.SECONDS处解决问题 必须替换导入类时间单位 到
导入java.util.concurrent.TimeUnit 它给了我一个错误,无法解析verifyphonenumberDo你碰巧有一个android firebase phoneuth的示例代码吗?也给了我同样的错误。与上述代码相同。此处也存在相同错误
未找到适用于verifyPhoneNumber的方法
submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String phoneNum = editText.getText().toString();
Toast.makeText(MainActivity.this, phoneNum, Toast.LENGTH_SHORT).show();
verifyPhone(phoneNum,mCallBacks);
}
});
public void verifyPhone(String phoneNumber, PhoneAuthProvider.OnVerificationStateChangedCallbacks mCallbacks){
PhoneAuthProvider.getInstance().verifyPhoneNumber(
phoneNumber, // Phone number to verify
60, // Timeout duration
TimeUnit.SECONDS, // Unit of timeout
this, // Activity (for callback binding)
mCallbacks); // OnVerificationStateChangedCallbac
}