在初始屏幕期间初始化主要 activity

Initialization of the main activity, during the splash screen

我需要这样,当我打开应用程序时,屏幕保护程序会运行并且主程序 activity 会打开。但是在闪屏期间,主 activity 已经加载。在文章和视频中,他们通过 postdelayed 来实现,这不适合我(也就是说,用户首先等待 splashscr,然后仍然等待 main activity 加载)。我还不如使用 thrsleep。我正在考虑通过 Asynctask 进行操作并将打开放在后台或 onpreExecute 中,但是 activity 可能会立即打开而不会出现 splashscr。请帮助,或提出一个想法。我也遇到了这个 article and this,但该应用程序也在启动画面后继续加载。清单中的启动器 activity 我有一个登录名 window。从它,它进入 splashscr,并从那里进入主要 activity.

您可以使用全屏对话框

在 Main 上使用带有 Runnable 的全屏对话框 Activity

public void showsplash() {

final Dialog dialog = new Dialog(MainActivity.this,
android.R.style.Theme_Black_NoTitleBar_Fullscreen);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.activity_splash_screen);
dialog.setCancelable(true);
dialog.show();

final Handler handler  = new Handler();
final Runnable runnable = new Runnable() {
    @Override
    public void run() {
        {
           dialog.dismiss();
        }
    }
};
handler.postDelayed(runnable, 30000);
}