소프트랩스/비쨔

스플래쉬 안드로이드 11 이하에서는 안되던 이슈

흑백 개발자 2025. 2. 6. 15:18
728x90

스플래쉬가 12 이상에서는 api 쓰는 방식으로 하였진만

11 이하에서는 앱으로 직업 설정해줘야했다.

연관된 파일을 찾기 힘들기 때문에 커서로 코드베이스 이용해서 해야했다.

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

안드로이드 버전별 스플래시 화면 설정 가이드를 정리해드리겠습니다!

 
 

1. pubspec.yaml 설

flutter_native_splash:
  color: "#FFFFFF"
  image: "assets/icon/app_icon2.png"  # 안드로이드 11 이하용 (큰 이미지)
  
  android_12:
    image: "assets/icon/app_icon3.png"  # 안드로이드 12 이상용 (작은 이미지)
    color: "#FFFFFF"
  
  android: true
  ios: true

2. 이미지 준

  • 안드로이드 11 이하용: 큰 크기의 이미지 (예: app_icon2.png)
 
  • 안드로이드 12 이상용: 작은 크기의 이미지 (예: app_icon3.png)
 
  • 이미지들을 assets/icon/  폴더에 위
 

3. 처리 과정

  • 안드로이드 12 이상
 
  • values-v31/styles.xml  에서 처
 
  • 시스템 레벨의 SplashScreen API 사용
   <style name="LaunchTheme" parent="@android:style/Theme.Light.NoTitleBar">
       <item name="android:windowSplashScreenBackground">#FFFFFF</item>
       <item name="android:windowSplashScreenAnimatedIcon">@drawable/android12splash</item>
   </style>
  • 드로이드 11 이하:
 
  • l launch_background.xml  에서 처리
 
  • 앱 레벨의 전통적인 스플래시 화면 사용

   <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
       <item>
           <color android:color="#FFFFFF"/>
       </item>
       <item>
           <bitmap
               android:gravity="center"
               android:src="@drawable/splash"/>
       </item>
   </layer-list>

4. 적용 명령어

flutter clean
flutter pub get
flutter pub run flutter_native_splash:create

주의사항

 
 

1. 이미지 크기:

 
 
  • 안드로이드 11 이하: 큰 이미지 사용 가능
 
 
  • 안드로이드 12 이상: 적당한 크기 권장 (너무 크면 자동 리사이즈)
 
 
  • 파일 위치:
 
 
  • 미지 파일들은 반드시 assets/icon/ 폴더에 위치
 
 
  • pubspec.yaml assets 섹션에 경로 추가 필요
 
 
  • 미지 형식:
 
 
  • PNG 형식 권
 
 
  • 투명 배경 지
 
 

이렇게 설정하면 안드로이드 버전별로 다른 크기의 스플래시 이미지를 사용할 수 있습니다! 🎉

728x90