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 ) ; }
Registers app init with params filtered from the intent . This will wait on the wait locks to complete any pending operations