Java 为什么不是';我的addonSuccessListener不工作吗?
除了我自己,我还试图让任何一个拥有“喜欢”或“不喜欢”字符串值的用户,但是我的代码只是跳转到函数的末尾,而没有执行里面的代码。我必须改变什么?我尝试在另一个项目中进行测试,它工作得很好,我只是用这个函数进行了复制和粘贴,现在它不工作了 对不起,我的英语很差,我是巴西人Java 为什么不是';我的addonSuccessListener不工作吗?,java,android,firebase,google-cloud-firestore,Java,Android,Firebase,Google Cloud Firestore,除了我自己,我还试图让任何一个拥有“喜欢”或“不喜欢”字符串值的用户,但是我的代码只是跳转到函数的末尾,而没有执行里面的代码。我必须改变什么?我尝试在另一个项目中进行测试,它工作得很好,我只是用这个函数进行了复制和粘贴,现在它不工作了 对不起,我的英语很差,我是巴西人 private void getMyIdEqualLike() { Query query = usersReferenceDb.document(userCardViewID).collection("conne
private void getMyIdEqualLike() {
Query query = usersReferenceDb.document(userCardViewID).collection("connections").whereEqualTo(myUId, "like");
query.get().addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {
@Override
public void onSuccess(QuerySnapshot queryDocumentSnapshots) {
uConnectID = queryDocumentSnapshots.getDocuments().toString();
}
});
}
private void getMyIdEqualLike(){
Query Query=usersrereferencedb.document(usercardwiewid).collection(“连接”).whereEqualTo(myUId,“like”);
query.get().addOnSuccessListener(新的OnSuccessListener()){
@凌驾
成功时公共无效(QuerySnapshot QueryDocumentSnapshot){
uConnectID=queryDocumentSnapshots.getDocuments().toString();
}
});
}
getDocuments()函数应该返回一个列表,其中包含用户的documentSnapshot,如果它等于“like”,则返回“[]”作为空列表,但我从UConnected变量中得到null,因此我逐步调试了它,发现它停在“query.get().addOnSuccessListener…”然后直接跳到函数的末尾。使用
addOnCompleteListener
并检查query.get()
是否成功完成
您的代码有
onSuccessListener
,只有在调用成功时才会触发。您永远不能进入onSuccess
,因为它是异步触发的。你必须在那里设置一个断点,看看它是否命中。在这里查看我的答案:您可能还需要添加一个addOnFailureListener(…)
,以查看它是否显示问题。