在初始化我的uid
时打开初始片段时获取KotlinNullPointerException:
fun setInitialData() {
firebaseUser = FirebaseAuth.getInstance().currentUser
databaseReference = FirebaseDatabase.getInstance().reference
uid = firebaseUser!!.uid
但是,如果我在firebaseUser?.uid
上替换初始化,数据库数据将不会立即加载。
那么了解这种正确的方法吗?
我也了解在加载数据之前暂停一下的决定还有什么额外的?
答案 0 :(得分:1)
根据有关FirebaseUser的getCurrentUser()方法的官方文档:
返回当前登录的FirebaseUser,如果没有,则返回 null 。
并回答您的问题:
所以了解这是正确的方法吗?
否,您需要始终使用getCurrentUser() != null
来检查用户是否登录。
我也了解在加载数据之前暂停一下的决定还有什么额外的?
在这种情况下,无需暂停某些内容。
答案 1 :(得分:0)
创建活动或片段时,无法初始化Firebase身份验证,因为它需要时间才能做出响应。尝试通过单击按钮或oncreate以外的其他任何方式传递它。