FCM token Not Generating(未生成FCM令牌)
问题描述
我正在将推送通知集成到我的聊天应用程序中。因此,在我的注册片段中,我为FCM令牌编写了以下代码: FirebaseMessaging.getInstance().token.addOnCompleteListener(OnCompleteListener { task ->
if (!task.isSuccessful) {
Log.w("TAG", "Fetching FCM registration token failed", task.exception)
return@OnCompleteListener
}
// Get new FCM registration token
userToken = task.result.toString()
Log.d("task", userToken)
})
在此之后,我将此内标识上载到FireBase数据库,但收到错误消息
lateinit property userToken has not been initialized
我不知道为什么我会收到这个错误,因为我是在访问它之前初始化它的。 如果有人知道我哪里错了,请帮帮我。
推荐答案
试试
val user = FirebaseAuth.getInstance().currentUser
var token: String? = null
val lock = CountDownLatch(1)
user?.getIdToken(true)?.addOnCompleteListener { task ->
if (task.isSuccessful) {
userToken = task.result?.token
if (token == null) {
lock.countDown() //<--unlock
return@addOnCompleteListener
}
//save token
} else {
lock.countDown() //<--unlock
return@addOnCompleteListener
}
}
lock.await()
这篇关于未生成FCM令牌的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!