Android12부터 SplashScreen API로 스플래시 화면을 띄울 수 있다.
Android12 이전에서도 SplashScreen을 사용하고, 추가적인 설정을 하기 위해서는 core-splashscreen 라이브러리를 사용해야 한다.
SplashScreen
compat 라이브러리를 사용하면 모든 Android 버전에서 동일한 스플래시 화면을 표시한다.
implementation 'androidx.core:core-splashscreen:1.0.0-beta02'
이때 postSplashScreenTheme
의 값을 Activity
가 사용해야 하는 테마로 설정해야 한다.
Splash를 실행할 activity에 android:theme="@style/Theme.MusicRoad.Splash"
테마를 설정
4. Activity에 코드 추가
onCreate의 super.onCreate() 전에 installSplashScreen()
을 호출하기
기존 우리 프로젝트의 전체 테마는 android:theme="@style/Theme.MusicRoad"
으로 설정되어 있다.
<style name="Theme.MusicRoad" parent="android:Theme.Material.Light.NoActionBar" />
이를 확장해서 splash 테마를 설정할 수 있다.
<style name="Theme.MusicRoad.Splash" parent="Theme.SplashScreen">
<item name="windowSplashScreenBackground">@color/ic_musicroad_background</item>
<item name="postSplashScreenTheme">@style/Theme.MusicRoad</item>
</style>