If you’ve made a change that impacts the first screen of existing users' apps, it’s possible that the first screen is rendered before the latest Apptimize experiment configuration is retrieved, in which case they will receive the cached configuration from their previous app session.
This may not pose an issue, as although users might miss a change that was made upon their first session returning to the app, in subsequent sessions they will have the proper configuration. That being said, if you wish to introduce a delay in your app launch to ensure that the proper configuration is retrieved prior to presenting users with the first screen, to address this we have introduced the refreshMetadata ApptimizeOption (iOS / Android). This option will delay the initialization of Apptimize until the latest Apptimize configuration is retrieved, and when used in conjunction with the APIs below can be used to introduce a synchronous delay until then:
ApptimizeRefreshMetaDataOnSetup enforces blocking when forcing metadata refresh when using waitForTestsToBecomeAvailable:, ApptimizeUpdateMetadataTimeoutOption, or ApptimizeDelayUntilTestsAreAvailableOption
If setIsRefreshingMetadataOnSetup has been set in conjunction with setUpdateMetadataTimeout(long), then apptimize will wait on the result of the metadata refresh.
Note: If you wish to run an experiment or make a change that impacts only first time app users (such as in an onboarding test) please see this FAQ.
Please sign in to leave a comment.