【发布时间】:2019-07-27 12:53:23
【问题描述】:
我正在尝试使用 Android 应用从 Firebase 接收 OTP 号码。每次手机重启后我都会收到 OTP,之后我没有收到任何 OTP。非常感谢任何帮助。我的项目包含以下四个活动。
选项已尝试解决此问题
- 已清除手机上的数据。其他用户也有同样的问题。
【问题讨论】:
标签: android firebase firebase-authentication one-time-password
我正在尝试使用 Android 应用从 Firebase 接收 OTP 号码。每次手机重启后我都会收到 OTP,之后我没有收到任何 OTP。非常感谢任何帮助。我的项目包含以下四个活动。
选项已尝试解决此问题
【问题讨论】:
标签: android firebase firebase-authentication one-time-password
你应该先删除
FirebaseAuth.getInstance().signOut();
FirebaseAuth.getInstance().signOut();
FirebaseAuth.getInstance().signOut();
FirebaseAuth.getInstance().signOut();
FirebaseAuth.getInstance().signOut();
不应连续调用 5 次。只需在 onStop 方法中执行一次:
override fun onStop() {
super.onStop()
FirebaseAuth.getInstance().signOut()
}
我认为你应该设置
FirebaseApp.initializeApp(this);
仅一次,并确保最好将其放在您的自定义应用程序类中:
class CustomApplication : Application() {
override fun onCreate() {
super.onCreate()
/**
* Firebase Initialization code
* **/
FirebaseApp.initializeApp(this)
}}
然后,在您的 Manifest.xml 文件中:
<application
android:name=".CustomApplication"
android:allowBackup="true"
android:fullBackupContent="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:largeHeap="true"
android:supportsRtl="true"
android:theme="@style/AppTheme">
.... ....
</application>
官方 Firebase github 仓库
此外,请务必查看 Firebase/quickstart-android - PhoneAuthActivity 的示例代码,用于官方存储库的电话身份验证: quickstart-android for phone authentication
然后,您应该准备好使用 Firebase 进行正确的电话身份验证。
【讨论】:
class CustomApplication : Application() { override fun onCreate() { super.onCreate() /** * Firebase Initialization code * **/ FirebaseApp.initializeApp(this) }}