问题描述
我有一个使用Firebase验证用户电话号码的本地应用程序。到目前为止,我正在使用添加到Firebase控制台中的测试电话号码对此进行测试,并且工作正常。 现在,我正在尝试准备发布应用程序,并且试图生成签名的发布并测试电话验证。我做了以下事情:
- 生成了发行密钥库并将其添加到android / app
- 将这些参数添加到build.gradle android.signincConfigs.release storeFile文件('my-release-key.keystore') storePassword'我的密码' keyAlias“我的别名” keyPassword'我的密码' (基本上遵循这些步骤https://medium.com/@raguct25/how-to-generate-signed-or-released-apk-file-from-react-native-252bdd1915a2)
- 使用keytool -list ...命令获取SHA-1并将其添加到我的项目下的Firebase控制台中。
- 下载新的google-services.json并将其添加到android / app下
在每个版本中,当Firebase尝试进行身份验证时,当发出发送OTP代码的请求时,这都会导致应用程序崩溃。我的实现类似于此处https://heartbeat.fritz.ai/implement-firebase-phone-authentication-in-react-native-apps-237959027611
中描述的方法应用程序可以很好地与测试电话号码配合使用。
firebase
.auth()
.signInWithPhoneNumber(this.state.phone)
.then(confirmResult => {
this.setState({ confirmResult })
})
.catch(error => {
alert(error.message)
console.log(error)
})
我在这里错过了什么吗?
解决方法
将此行置于依赖项下的 app / build.gradle 中
实现“ androidx.browser:browser:1.2.0”
这是因为它进行了reCAPTCHA验证并打开了浏览器。