code: private void registerAppInit(BranchReferralInitListener
                                           callback, ServerRequest.PROCESS_WAIT_LOCK lock) {
          ServerRequest request = getInstallOrOpenRequest(callback);
          request.addProcessWaitLock(lock);
          if (isGAParamsFetchInProgress_) {
              request.addProcessWaitLock(ServerRequest.PROCESS_WAIT_LOCK.GAID_FETCH_WAIT_LOCK);
          }
          // Single top activities can be launched from stack and there may be a new intent provided with onNewIntent() call.
          // In this case need to wait till onResume to get the latest intent. Bypass this if isForceSession_ is true.
          if (intentState_ != INTENT_STATE.READY  && !isForceSessionEnabled()) {
              request.addProcessWaitLock(ServerRequest.PROCESS_WAIT_LOCK.INTENT_PENDING_WAIT_LOCK);
          }
          if (checkInstallReferrer_ && request instanceof ServerRequestRegisterInstall && !InstallListener.unReportedReferrerAvailable) {
              request.addProcessWaitLock(ServerRequest.PROCESS_WAIT_LOCK.INSTALL_REFERRER_FETCH_WAIT_LOCK);
              InstallListener.captureInstallReferrer(context_, playStoreReferrerFetchTime, this);
          }
          
          registerInstallOrOpen(request, callback);
      }
docs: Registers app init with params filtered from the intent. This will wait on the wait locks to complete any pending operations