The current implementation dispatches async after waiting 1/2 second to ensure that an activity spinner is displayed to avoid flashing. We should update the logic to instead do the following:
If the call to app check completes before some short threshold is met, just carry on without any loading screen.
If that threshold is exceeded, then display a loading screen for at least 1/2 second.
After displaying the loading screen for 1/2, complete when callback is received from app check.
The current implementation dispatches async after waiting 1/2 second to ensure that an activity spinner is displayed to avoid flashing. We should update the logic to instead do the following: