Expo недавно запустила библиотеку expo-firebase-recaptcha, и я пытаюсь реализовать ее в своем приложении. Повторная проверка происходит успешно, чтобы проверить, являюсь ли я роботом, однако я не получаю текстовое сообщение с кодом подтверждения. Что я делаю неправильно? Любая помощь будет оценена.
Вот фрагмент моего кода
import * as firebase from "firebase/app";
import "firebase/auth";
import {
FirebaseRecaptchaVerifierModal,
FirebaseAuthApplicationVerifier
} from "expo-firebase-recaptcha";
var config = {
apiKey: "",
authDomain: "",
databaseURL: "",
projectId: "",
storageBucket: "",
messagingSenderId: "",
appId: ""
};
if (!firebase.apps.length) {
firebase.initializeApp(config);
}
function LoginScreen() {
const recaptchaVerifier = React.createRef();
async onSendOtp(){
if(this.state.phone!="")
{
try{
this.setState({Otp:!this.state.Otp})
var phoneNumber = this.state.phone;
console.log("Phone"+phoneNumber);
const phoneProvider = new firebase.auth.PhoneAuthProvider();
const verificationid = await phoneProvider.verifyPhoneNumber(
phoneNumber,
recaptchaVerifier.current
);
this.setState({
verificationId:verificationid
})
console.log("Message sent"+this.state.verificationId);
}catch(err){
console.log("Error message"+err)
}
}
else
{
Alert.alert("Enter phone number");
}
}
return (
<View style={{ width: "100%", flex: 1, paddingHorizontal: 30 }}>
<Title>Login</Title>
<FirebaseRecaptchaVerifierModal
ref={recaptchaVerifier}
firebaseConfig={config}
/>
<View style={styles.inputContainer}>
<Icon style={styles.inputIcon} name="mobile-phone"/>
<TextInput style={styles.inputs}
placeholder="Phone number"
autoCapitalize="none"
keyboardType="numeric"
underlineColorAndroid='transparent'
maxLength={10}
onChangeText={(text)=>this.phonenumberchange(text)}/>
</View>
<TouchableHighlight style={[styles.buttonContainer, styles.signupButton]} onPress={() => this.onSendOtp()}>
<Text id="sendcode" style={styles.signUpText}>SEND CONFIRMATION CODE</Text>
</TouchableHighlight>
</View> );
}