When you first launch the app opens LoginActivity, next times you launch it opens MainActivity. LoginActivity only need to remember the username, etc. Everything else is in MainActivity.
So LoginActivity launches too slow. Please help to optimize the application to launch it faster.
It's my LoginActivity:
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);
    notFirstInit();
    spinner = (AppCompatSpinner) findViewById(R.id.spinner);
    editText = (EditText) findViewById(R.id.editText);
    button = (Button) findViewById(R.id.login_button);
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            name = editText.getText().toString();
            group = spinner.getSelectedItem().toString();
            saveUserData();
            startMainActivity();
            finish();
        }
    });
}
private void saveUserData() {
    editor = settings.edit();
    editor.putString("name", name);
    editor.putString("group", group);
    editor.apply();
}
private void notFirstInit() {
    settings = getSharedPreferences("settings", Context.MODE_PRIVATE);
    if (settings.getBoolean("activity_executed", false)) {
        startMainActivity();
        finish();
    } else {
        editor = settings.edit();
        editor.putBoolean("activity_executed", true);
        editor.apply();
    }
}
private void startMainActivity() {
    Intent intent = new Intent(this, MainActivity.class);
    startActivity(intent);
}
You can see how much time it takes to launch in logcat:
08-13 00:07:12.500 6996-6996/uz.triplet.tuitguide W/System: ClassLoader referenced unknown path: /data/app/uz.triplet.tuitguide-1/lib/arm
08-13 00:07:21.927 6996-6996/uz.triplet.tuitguide W/System: ClassLoader referenced unknown path: /data/app/uz.triplet.tuitguide-1/lib/arm
08-13 00:07:21.929 6996-6996/uz.triplet.tuitguide I/LoadedApk: No resource references to update in package common
08-13 00:07:21.930 6996-6996/uz.triplet.tuitguide I/LoadedApk: No resource references to update in package com.chummy.jezebel.material.dark.regression
08-13 00:07:22.295 6996-7370/uz.triplet.tuitguide D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: false
                                                                    [ 08-13 00:07:22.310  6996: 6996 D/         ]
                                                                    GPU monitor inactive - could not find libgpumonitor.so [(null)] or not enabled (debug.egl.hw.gpumonitor = 0)
08-13 00:07:22.359 6996-7370/uz.triplet.tuitguide D/libEGL: loaded /vendor/lib/egl/libGLES_vc4.so
08-13 00:07:22.407 6996-7370/uz.triplet.tuitguide I/OpenGLRenderer: Initialized EGL, version 1.4
08-13 00:07:22.410 6996-7370/uz.triplet.tuitguide W/egl_server: Allocating storage 1x1 surface type 0x1
08-13 00:07:22.421 6996-7370/uz.triplet.tuitguide W/khrn_client: init_window num_buffers 3 min undequeued buffers 1
08-13 00:07:22.422 6996-7370/uz.triplet.tuitguide W/khrn_client: init_window window 0x43747af8, 480x800 hintTransform 0x0 do_pre 1
UPD: I don't know why but when I'm building new APK using Build -> Build APK application opens instantly. What is the problem with running app clicking the button Run