【发布时间】:2020-11-03 01:24:33
【问题描述】:
我正在使用 Firebase 验证用户电话号码的 react-native 应用。到目前为止,我正在使用添加到 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下
-
- 使用 ./gradlew assembleRelease 生成构建
- 使用 Android Studio 生成签名的 APK
- 使用 react-native run-android —variant=release 在模拟器中运行发布
在每个构建中,当 Firebase 尝试进行身份验证时,它会在发出发送 OTP 代码的请求时导致应用崩溃。我的实现类似于这里描述的方法https://heartbeat.fritz.ai/implement-firebase-phone-authentication-in-react-native-apps-237959027611
应用与测试电话号码配合良好。
错误在此代码中默默发生,例如catch 块没有捕获任何错误:
firebase
.auth()
.signInWithPhoneNumber(this.state.phone)
.then(confirmResult => {
this.setState({ confirmResult })
})
.catch(error => {
alert(error.message)
console.log(error)
})
我错过了什么吗?
【问题讨论】:
标签: android firebase react-native firebase-authentication sha1