为什么我的代码要先执行oncomplete,然后再执行onsucces呢?即使oncomplete在代码的上面?

li9yvcax  于 2021-06-26  发布在  Java
关注(0)|答案(1)|浏览(730)

我想使用oncomplete检索我的documentid。我要把这个文件放在马桶里。所以必须按这个顺序。为什么没有呢?
java,带有硬编码的documentid以获得良好的日志

fStore.collection("Lessen").whereEqualTo("Wanneer", model.getWanneer())
                .get()
                .addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
                                           @Override
                                           public void onComplete(@NonNull @NotNull Task<QuerySnapshot> task) {
                                               if (task.isSuccessful()) {
                                                   for (QueryDocumentSnapshot document : Objects.requireNonNull(task.getResult())) {
                                                       docid = document.getId();
                                                       Log.d(TAG, "onComplete: docid =  " + docid);
                                                   }
                                               }
                                           }
                                       });
    fStore
            .collection("Lessen").document("IYedtghMuNI9fmrlJjX2").
            collection("Deelnemers").document(userID)
            .get()
            .addOnSuccessListener(new OnSuccessListener<DocumentSnapshot>() {
                                      @Override
                                      public void onSuccess(DocumentSnapshot documentSnapshot) {
                                          Log.d(TAG, "onSuccess: lid ingeschreven?");
                                      }
                                  })
            .addOnFailureListener(new OnFailureListener() {
                @Override
                public void onFailure(@NonNull @NotNull Exception e) {
                    Log.d(TAG, "onFailure: lid niet ingeschreven?");
                }
            });

日志:

bkkx9g8r

bkkx9g8r1#

我想,我可能错了,但是 onComplete 操作完成后立即触发,无论是否成功。
所以我才会这么想 onComplete 会触发之前 onSuccess .
这里的代码顺序没有什么区别,因为这些是回调。

相关问题