Only fullscreen opaque activities can request orientation

开发阶段一直都是使用Android的模拟器在测试项目,今天运行到Android 8.0真机上,我靠,打脸了,上来就崩了,连首页都没进去啊。。。
Only fullscreen opaque activities can request orientation

造成在splash页面崩溃的原因是:Only fullscreen opaque activities can request orientation 即只有全屏不透明的活动才能请求定向。

之所以出现这样的问题,是因为我们为了提高用户体验,手动取消App启动白屏或者黑屏的时候,将Splash界面设为了透明,然后这个时候又设置了方向为垂直,从而导致了这个问题。

OK,既然知道问题所在就好办了,解决方案也很简单:
1、找到你设置透明的Activity,然后在他的theme中将android:windowIsTranslucent改为false
2、再加入这句<item name="android:windowDisablePreview">true</item>,作用是禁用窗口的预览动画。
Only fullscreen opaque activities can request orientation