title: Directing to different Intents from a single intent (What is the best practice?)
body: <p>I'm building an app which has an Intro page with many slides. Once a first time user has gone through the intro, he'll be directed to a login screen. Once he logged in (or registered), he'll be taken into the app home page. As long as the user doesn't sign out, if he clicks on the app icon he'll be directly taken to the home screen.</p>
  
  <p>I'm using the Intro page intent as the LAUNCHER activity and using <code>sharedpreference</code> to save 'first usage' and logged in states. By testing if the user has logged in or a first time user, I'm directing him to different intents.</p>
  
  <p>So my question is, where is the most suitable position to have this intent redirection? Because Intro page has so many fragments and components, setting it as the LAUNCHER activity and having all the if else statements there to decide where the user should go, have I wasted system resources? Because if the user has already logged in, he'll taken into the home page without showing any app intro stuff which are loaded.</p>
  
  <p>Or is it a good practice to create an empty activity and set that as the LAUNCHER activity and put all the if else statements in that. So the app doesn't need to go to the 'heavy' app intro page.</p>
  
  <p>PS: I've declared those intent direction if else statements in the onCreate right after super.onCreate();</p>
  
  <pre><code>@Override
      protected void onCreate(Bundle savedInstanceState) {
  
          // Fullscreen
          requestWindowFeature(Window.FEATURE_NO_TITLE);
          getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                  WindowManager.LayoutParams.FLAG_FULLSCREEN);
  
          super.onCreate(savedInstanceState);
          // activity_first_usage is the container for all frames
          setContentView(R.layout.activity_first_usage);
  
          logger = new Logger(this);
  
          if (!logger.isFirstUsage()) {
              if (logger.hasTOKEN()) {
                  // If user didn't log out, then he can stay in the app
                  Intent home = new Intent(getApplicationContext(), Home.class);
                  startActivity(home);
                  finish();
              } else {
                  // If this is not the first time user login in, no need to show the intro
                  Intent directToSignIn = new Intent(getApplicationContext(), SignIn.class);
                  startActivity(directToSignIn);
                  finish();
              }
          } else {
              // If not, continue with the Intro and set usage status to used
              logger.setFirstUsage(false);
              }
  ...
  }
  </code></pre>