启动,关闭项目时,黑白屏问题及处理方法

在启动APP时,在视图加载完成的这段时间内,app显示的是window的背景图片,默然为主题设置的颜色
Theme.AppCompat.Light.NoActionBar 白色 或者night 黑色

处理方法

1、启动




这样设置主题,点击桌面应用图标后,先加载这里设置的背景图片。

2、关闭应用

我的解决的方法是:通过异步,关闭应用。
@Override
 public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
                finish();
            ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
            am.restartPackage(getPackageName());

            new Handler().postDelayed(new Runnable() {
                @Override
                public void run() {
                    System.exit(0);
                    android.os.Process.killProcess(android.os.Process.myPid());
                }
            },800);   
        }
        return super.onKeyDown(keyCode, event);
    }


处理退出APP的黑白屏问题,还可以通过设置主题中true  把最底层(我的是mainactivity)的activity主题此属性设置成true

这种方式遇到的问题是,如果项目中集成了侧滑finish页面,就会用到这个属性,但是某些机型会出现侧滑时,背景会直接显示桌面的情况。这时候就要把最底层的activity(mainactivity)的这个android:windowIsTranslucent属性修改成false。
这样就造成了,退出时,如果使用
ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
am.restartPackage(getPackageName());
System.exit(0);
android.os.Process.killProcess(android.os.Process.myPid());方式, 就是出现黑屏的情况了。


你可能感兴趣的:(启动,关闭项目时,黑白屏问题及处理方法)