简体   繁体   中英

How to run Multiples Task on FirebaseDatabase

I have created two tasks to write data on the firebase datbase

class EventDataAddingTask implements Continuation<User, Task<Boolean>> {
        @Override
        public Task<Boolean> then(Task<User> task) {
            final TaskCompletionSource<Boolean> tcs = new TaskCompletionSource();
            mUserEventsRefrence.child(user.getUid()).setValue(addEditEventData)
                    .addOnCompleteListener(new OnCompleteListener<Void>() {
                        @Override
                        public void onComplete(@NonNull Task<Void> task) {
                            if(task.isSuccessful()){
                                tcs.setResult(true);
                            }
                        }
                    }).addOnFailureListener(new OnFailureListener() {
                        @Override
                        public void onFailure(@NonNull Exception error) {
                            tcs.setResult(false);
                            tcs.setException(error);
                        }
                    });
            return tcs.getTask();
        }
    }



class UserPaymentAddingTask implements Continuation<User, Task<Boolean>> {
        @Override
        public Task<Boolean> then(Task<User> task) {
            final TaskCompletionSource<Boolean> tcs = new TaskCompletionSource();
            mUserPaymentDetailsRefrence.child(user.getUid()).setValue(addEditUserPaymentData)
                    .addOnCompleteListener(new OnCompleteListener<Void>() {
                        @Override
                        public void onComplete(@NonNull Task<Void> task) {
                            if(task.isSuccessful()){
                                tcs.setResult(true);
                            }
                        }
                    }).addOnFailureListener(new OnFailureListener() {
                @Override
                public void onFailure(@NonNull Exception error) {
                    tcs.setResult(false);
                    tcs.setException(error);
                }
            });
            return tcs.getTask();
        }
    }

I do not know how to run these two tasks so that when one task is completed and other run automatically and show message to user when both task has completed successfully

Play Services Task API提供了一种使用continueWithTask()将任务按顺序链接在一起的方法。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM