0
votes

so I'm developing an app that uses MvxSplashScreenActivity for its splash screen and it works well. I just got a feature request for onboarding screens to be shown to first time users. Here comes the problem, I can't seem to find a place to hook in code like if new user then do onboarding else show the splash screen. Is this possible or am I not thinking about it correctly. I will be using this AppIntro for the onboarding slides. Any assistance will be appreciated

2
a splash screen is usually displayed while the app is initializing, so having any app logic execute before the splash screen is problematic.Jason
@Jason so should I display the splash screen then either show the onboarding slides or login screen, depending on if it's a first time user or not? This sounds ok to me, but is that the best practice?realsum137
yes, that's how I would do itJason

2 Answers

0
votes

I like to funnel users through another activity that has the same layout as the splash screen, which allows you to do any other initialisation and decide where the user should go. This means that you show every user the splash screen and every user the 'loading' screen, but where they go next depends on whether they are a new user or not. The user won't be able to tell the difference between the splash screen and your loading screen unless you want them too so it appears seamless. So it will look like:

Splash -> Main Loading Screen -> if new user Onboarding else the first screen of your app

If you are making any calls to an API or doing anything else that could take a while here it is wise to show an activity indicator also, so the user knows something is happening and the app isn't frozen.

0
votes

I implemented Jason's suggestion. Basically, always show the splash screen and based on whether it's a new user or not show the onboarding screen or home screen.