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() 

相关内容

  • 没有找到相关文章

最新更新