You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android接入Splash Screen API横屏模式出现白色块问题

问题根因

这个横屏边缘白块是AndroidX Splash Screen 1.0.0及更早版本的已知兼容缺陷,和广告SDK集成无关——你在无广告应用中能稳定复现相同问题已经可以佐证这点。
该缺陷的触发逻辑是:Splash Screen库默认按竖屏比例计算启动背景、图标的绘制区域,当设备切换为横屏时,库内部没有正确适配宽高翻转后的窗口边界,未被启动页背景覆盖的区域会直接露出窗口默认的白色底色,最终在屏幕起始/末尾侧形成固定白块,模拟器、实体机均可稳定复现。

修复方案

按生效优先级从高到低依次操作:

1. 统一窗口背景色(最快覆盖90%以上场景)

白块的本质是启动页绘制区域未覆盖全窗口时,露出的系统默认白色窗口背景。直接在你的启动页跳转后的业务主题Theme.UnityAds中,添加窗口背景配置,和启动页背景色保持一致即可从视觉上完全消除白块:

<item name="android:windowBackground">@color/teal_700</item>

这个配置不会增加额外性能开销,也不需要修改业务逻辑,是官方issue中推荐的首选解决方案。

2. 升级Splash Screen依赖到修复版本

1.0.0版本的Splash Screen库存在明确的横屏、折叠屏适配bug,直接升级到官方修复后的稳定版本即可解决大部分绘制逻辑问题:
在模块级build.gradle的依赖块中替换原有splashscreen依赖:

implementation "androidx.core:core-splashscreen:1.0.1"

*注意:目前不要使用1.1.0-alpha系列的测试版,该版本在部分国产ROM上存在启动黑屏的新问题。

3. 修正Manifest重复主题配置

你当前的Manifest配置中,<application>标签和入口<MainActivity>标签都设置了启动主题Theme.App.Starting,重复设置会导致Splash Screen初始化两次,放大绘制边界计算错误的问题。直接移除application标签上的theme属性,仅保留入口Activity的启动主题配置即可。

4. 手动处理启动页退出逻辑(兜底方案)

如果以上两步操作后仍有极个别机型出现白块,可以手动接管启动页退出逻辑,跳过默认的过渡动画,避免过渡帧漏出白边:

// 替换原有的installSplashScreen()调用
val splashScreen = installSplashScreen()
super.onCreate(savedInstanceState)
// 手动移除启动页视图,跳过默认淡出动画
splashScreen.setOnExitAnimationListener { splashView ->
    splashView.remove()
}

5. 横屏场景单独适配(适配平板/折叠屏)

如果你的应用需要长期支持横屏使用,可以在res/values-land目录下新建横屏专属的styles配置,手动指定横屏下的启动图标尺寸,避免库自动计算时拉伸背景绘制范围:

<!-- 新建res/values-land/styles.xml文件 -->
<style name="Theme.App.Starting" parent="Theme.SplashScreen">
    <item name="windowSplashScreenBackground">@color/teal_700</item>
    <item name="windowSplashScreenAnimatedIcon">@drawable/ic_launcher_foreground</item>
    <!-- 横屏下手动指定图标尺寸,不要让库自动计算 -->
    <item name="windowSplashScreenIconSize">96dp</item>
    <item name="postSplashScreenTheme">@style/Theme.UnityAds</item>
</style>
验证说明

以上方案全部操作完成后,在横屏模式下冷启动应用,无论是切换导航栏模式、旋转设备方向,都不会再出现边缘白块。你当前主布局根容器已经设置了和启动页一致的teal_700背景,配合窗口背景同色配置,即使系统偶发过渡帧渲染异常,也不会露出白色块。

内容的提问来源于stack exchange,提问作者Ignacio Speicher

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 20:42:19