소스 검색

Revert "fix(mobile): Generate 1 splash screen on Android (#1443)" (#1498)

This reverts commit 00630bd4a3c67870db657a5a90bbfd32d7999fd1.
Alex 2 년 전
부모
커밋
391bf052e4
29개의 변경된 파일158개의 추가작업 그리고 326개의 파일을 삭제
  1. BIN
      mobile/android/app/src/main/res/drawable-hdpi/android12splash.png
  2. BIN
      mobile/android/app/src/main/res/drawable-mdpi/android12splash.png
  3. BIN
      mobile/android/app/src/main/res/drawable-night-hdpi/android12splash.png
  4. BIN
      mobile/android/app/src/main/res/drawable-night-mdpi/android12splash.png
  5. BIN
      mobile/android/app/src/main/res/drawable-night-xhdpi/android12splash.png
  6. BIN
      mobile/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png
  7. BIN
      mobile/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png
  8. BIN
      mobile/android/app/src/main/res/drawable-v21/background.png
  9. 9 3
      mobile/android/app/src/main/res/drawable-v21/launch_background.xml
  10. BIN
      mobile/android/app/src/main/res/drawable-xhdpi/android12splash.png
  11. BIN
      mobile/android/app/src/main/res/drawable-xxhdpi/android12splash.png
  12. BIN
      mobile/android/app/src/main/res/drawable-xxxhdpi/android12splash.png
  13. BIN
      mobile/android/app/src/main/res/drawable/background.png
  14. 9 3
      mobile/android/app/src/main/res/drawable/launch_background.xml
  15. 0 19
      mobile/android/app/src/main/res/values-night-v31/styles.xml
  16. 0 19
      mobile/android/app/src/main/res/values-v31/styles.xml
  17. 0 3
      mobile/android/app/src/main/res/values/styles.xml
  18. BIN
      mobile/assets/immich-logo-no-outline-android12.png
  19. 0 137
      mobile/flutter_native_splash.yaml
  20. 5 5
      mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json
  21. BIN
      mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
  22. BIN
      mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
  23. BIN
      mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
  24. 4 11
      mobile/ios/Runner/Base.lproj/LaunchScreen.storyboard
  25. 102 94
      mobile/ios/Runner/Info.plist
  26. 23 5
      mobile/lib/shared/views/splash_screen.dart
  27. 1 4
      mobile/makefile
  28. 4 18
      mobile/pubspec.lock
  29. 1 5
      mobile/pubspec.yaml

BIN
mobile/android/app/src/main/res/drawable-hdpi/android12splash.png


BIN
mobile/android/app/src/main/res/drawable-mdpi/android12splash.png


BIN
mobile/android/app/src/main/res/drawable-night-hdpi/android12splash.png


BIN
mobile/android/app/src/main/res/drawable-night-mdpi/android12splash.png


BIN
mobile/android/app/src/main/res/drawable-night-xhdpi/android12splash.png


BIN
mobile/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png


BIN
mobile/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png


BIN
mobile/android/app/src/main/res/drawable-v21/background.png


+ 9 - 3
mobile/android/app/src/main/res/drawable-v21/launch_background.xml

@@ -1,6 +1,12 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- Modify this file to customize your launch splash screen -->
 <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
-    <item>
-        <bitmap android:gravity="fill" android:src="@drawable/background"/>
-    </item>
+    <item android:drawable="?android:colorBackground" />
+
+    <!-- You can insert your own image assets here -->
+    <!-- <item>
+        <bitmap
+            android:gravity="center"
+            android:src="@mipmap/launch_image" />
+    </item> -->
 </layer-list>

BIN
mobile/android/app/src/main/res/drawable-xhdpi/android12splash.png


BIN
mobile/android/app/src/main/res/drawable-xxhdpi/android12splash.png


BIN
mobile/android/app/src/main/res/drawable-xxxhdpi/android12splash.png


BIN
mobile/android/app/src/main/res/drawable/background.png


+ 9 - 3
mobile/android/app/src/main/res/drawable/launch_background.xml

@@ -1,6 +1,12 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- Modify this file to customize your launch splash screen -->
 <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
-    <item>
-        <bitmap android:gravity="fill" android:src="@drawable/background"/>
-    </item>
+    <item android:drawable="@android:color/white" />
+
+    <!-- You can insert your own image assets here -->
+    <!-- <item>
+        <bitmap
+            android:gravity="center"
+            android:src="@mipmap/launch_image" />
+    </item> -->
 </layer-list>

+ 0 - 19
mobile/android/app/src/main/res/values-night-v31/styles.xml

@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off -->
-    <style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
-        <item name="android:forceDarkAllowed">false</item>
-        <item name="android:windowFullscreen">false</item>
-        <item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
-        <item name="android:windowSplashScreenAnimatedIcon">@drawable/android12splash</item>
-    </style>
-    <!-- Theme applied to the Android Window as soon as the process has started.
-         This theme determines the color of the Android Window while your
-         Flutter UI initializes, as well as behind your Flutter UI while its
-         running.
-         
-         This Theme is only used starting with V2 of Flutter's Android embedding. -->
-    <style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
-        <item name="android:windowBackground">?android:colorBackground</item>
-    </style>
-</resources>

+ 0 - 19
mobile/android/app/src/main/res/values-v31/styles.xml

@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off -->
-    <style name="LaunchTheme" parent="@android:style/Theme.Light.NoTitleBar">
-        <item name="android:forceDarkAllowed">false</item>
-        <item name="android:windowFullscreen">false</item>
-        <item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
-        <item name="android:windowSplashScreenAnimatedIcon">@drawable/android12splash</item>
-    </style>
-    <!-- Theme applied to the Android Window as soon as the process has started.
-         This theme determines the color of the Android Window while your
-         Flutter UI initializes, as well as behind your Flutter UI while its
-         running.
-         
-         This Theme is only used starting with V2 of Flutter's Android embedding. -->
-    <style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
-        <item name="android:windowBackground">?android:colorBackground</item>
-    </style>
-</resources>

+ 0 - 3
mobile/android/app/src/main/res/values/styles.xml

@@ -5,9 +5,6 @@
         <!-- Show a splash screen on the activity. Automatically removed when
              Flutter draws its first frame -->
         <item name="android:windowBackground">@drawable/launch_background</item>
-        <item name="android:forceDarkAllowed">false</item>
-        <item name="android:windowFullscreen">false</item>
-        <item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
     </style>
     <!-- Theme applied to the Android Window as soon as the process has started.
          This theme determines the color of the Android Window while your

BIN
mobile/assets/immich-logo-no-outline-android12.png


+ 0 - 137
mobile/flutter_native_splash.yaml

@@ -1,137 +0,0 @@
-flutter_native_splash:
-  # This package generates native code to customize Flutter's default white native splash screen
-  # with background color and splash image.
-  # Customize the parameters below, and run the following command in the terminal:
-  # flutter pub run flutter_native_splash:create
-  # To restore Flutter's default white splash screen, run the following command in the terminal:
-  # flutter pub run flutter_native_splash:remove
-
-  # color or background_image is the only required parameter.  Use color to set the background
-  # of your splash screen to a solid color.  Use background_image to set the background of your
-  # splash screen to a png image.  This is useful for gradients. The image will be stretch to the
-  # size of the app. Only one parameter can be used, color and background_image cannot both be set.
-  background_image: "assets/immich-logo-no-outline.png"
-
-  # Optional parameters are listed below.  To enable a parameter, uncomment the line by removing
-  # the leading # character.
-
-  # The image parameter allows you to specify an image used in the splash screen.  It must be a
-  # png file and should be sized for 4x pixel density.
-  #image: assets/splash.png
-
-  # The branding property allows you to specify an image used as branding in the splash screen.
-  # It must be a png file. It is supported for Android, iOS and the Web.  For Android 12,
-  # see the Android 12 section below.
-  #branding: assets/dart.png
-
-  # To position the branding image at the bottom of the screen you can use bottom, bottomRight,
-  # and bottomLeft. The default values is bottom if not specified or specified something else.
-  #branding_mode: bottom
-
-  # The color_dark, background_image_dark, image_dark, branding_dark are parameters that set the background
-  # and image when the device is in dark mode. If they are not specified, the app will use the
-  # parameters from above. If the image_dark parameter is specified, color_dark or
-  # background_image_dark must be specified.  color_dark and background_image_dark cannot both be
-  # set.
-  #color_dark: "#042a49"
-  #background_image_dark: "assets/dark-background.png"
-  #image_dark: assets/splash-invert.png
-  #branding_dark: assets/dart_dark.png
-
-  # Android 12 handles the splash screen differently than previous versions.  Please visit
-  # https://developer.android.com/guide/topics/ui/splash-screen
-  # Following are Android 12 specific parameter.
-  android_12:
-    # The image parameter sets the splash screen icon image.  If this parameter is not specified,
-    # the app's launcher icon will be used instead.
-    # Please note that the splash screen will be clipped to a circle on the center of the screen.
-    # App icon with an icon background: This should be 960×960 pixels, and fit within a circle
-    # 640 pixels in diameter.
-    # App icon without an icon background: This should be 1152×1152 pixels, and fit within a circle
-    # 768 pixels in diameter.
-    image: assets/immich-logo-no-outline-android12.png
-
-    # Splash screen background color.
-    #color: "#42a5f5"
-
-    # App icon background color.
-    #icon_background_color: "#111111"
-
-    # The branding property allows you to specify an image used as branding in the splash screen.
-    #branding: assets/dart.png
-
-    # The image_dark, color_dark, icon_background_color_dark, and branding_dark set values that
-    # apply when the device is in dark mode. If they are not specified, the app will use the
-    # parameters from above.
-    #image_dark: assets/android12splash-invert.png
-    #color_dark: "#042a49"
-    #icon_background_color_dark: "#eeeeee"
-
-  # The android, ios and web parameters can be used to disable generating a splash screen on a given
-  # platform.
-  #android: false
-  #ios: false
-  #web: false
-
-  # Platform specific images can be specified with the following parameters, which will override
-  # the respective parameter.  You may specify all, selected, or none of these parameters:
-  #color_android: "#42a5f5"
-  #color_dark_android: "#042a49"
-  #color_ios: "#42a5f5"
-  #color_dark_ios: "#042a49"
-  #color_web: "#42a5f5"
-  #color_dark_web: "#042a49"
-  #image_android: assets/splash-android.png
-  #image_dark_android: assets/splash-invert-android.png
-  #image_ios: assets/splash-ios.png
-  #image_dark_ios: assets/splash-invert-ios.png
-  #image_web: assets/splash-web.png
-  #image_dark_web: assets/splash-invert-web.png
-  #background_image_android: "assets/background-android.png"
-  #background_image_dark_android: "assets/dark-background-android.png"
-  #background_image_ios: "assets/background-ios.png"
-  #background_image_dark_ios: "assets/dark-background-ios.png"
-  #background_image_web: "assets/background-web.png"
-  #background_image_dark_web: "assets/dark-background-web.png"
-  #branding_android: assets/brand-android.png
-  #branding_dark_android: assets/dart_dark-android.png
-  #branding_ios: assets/brand-ios.png
-  #branding_dark_ios: assets/dart_dark-ios.png
-
-  # The position of the splash image can be set with android_gravity, ios_content_mode, and
-  # web_image_mode parameters.  All default to center.
-  #
-  # android_gravity can be one of the following Android Gravity (see
-  # https://developer.android.com/reference/android/view/Gravity): bottom, center,
-  # center_horizontal, center_vertical, clip_horizontal, clip_vertical, end, fill, fill_horizontal,
-  # fill_vertical, left, right, start, or top.
-  #android_gravity: center
-  #
-  # ios_content_mode can be one of the following iOS UIView.ContentMode (see
-  # https://developer.apple.com/documentation/uikit/uiview/contentmode): scaleToFill,
-  # scaleAspectFit, scaleAspectFill, center, top, bottom, left, right, topLeft, topRight,
-  # bottomLeft, or bottomRight.
-  #ios_content_mode: center
-  #
-  # web_image_mode can be one of the following modes: center, contain, stretch, and cover.
-  #web_image_mode: center
-
-  # The screen orientation can be set in Android with the android_screen_orientation parameter.
-  # Valid parameters can be found here:
-  # https://developer.android.com/guide/topics/manifest/activity-element#screen
-  #android_screen_orientation: sensorLandscape
-
-  # To hide the notification bar, use the fullscreen parameter.  Has no effect in web since web
-  # has no notification bar.  Defaults to false.
-  # NOTE: Unlike Android, iOS will not automatically show the notification bar when the app loads.
-  #       To show the notification bar, add the following code to your Flutter app:
-  #       WidgetsFlutterBinding.ensureInitialized();
-  #       SystemChrome.setEnabledSystemUIOverlays([SystemUiOverlay.bottom, SystemUiOverlay.top]);
-  #fullscreen: true
-
-  # If you have changed the name(s) of your info.plist file(s), you can specify the filename(s)
-  # with the info_plist_files parameter.  Remove only the # characters in the three lines below,
-  # do not remove any spaces:
-  #info_plist_files:
-  #  - 'ios/Runner/Info-Debug.plist'
-  #  - 'ios/Runner/Info-Release.plist'

+ 5 - 5
mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json

@@ -1,23 +1,23 @@
 {
   "images" : [
     {
-      "filename" : "LaunchImage.png",
       "idiom" : "universal",
+      "filename" : "LaunchImage.png",
       "scale" : "1x"
     },
     {
-      "filename" : "LaunchImage@2x.png",
       "idiom" : "universal",
+      "filename" : "LaunchImage@2x.png",
       "scale" : "2x"
     },
     {
-      "filename" : "LaunchImage@3x.png",
       "idiom" : "universal",
+      "filename" : "LaunchImage@3x.png",
       "scale" : "3x"
     }
   ],
   "info" : {
-    "author" : "xcode",
-    "version" : 1
+    "version" : 1,
+    "author" : "xcode"
   }
 }

BIN
mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png


BIN
mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png


BIN
mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png


+ 4 - 11
mobile/ios/Runner/Base.lproj/LaunchScreen.storyboard

@@ -16,19 +16,13 @@
                     <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
-                            <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" image="LaunchBackground" translatesAutoresizingMaskIntoConstraints="NO" id="tWc-Dq-wcI"/>
-                            <imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4"></imageView>
+                            <imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4">
+                            </imageView>
                         </subviews>
                         <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                         <constraints>
-                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leading" id="3T2-ad-Qdv"/>
-                            <constraint firstItem="tWc-Dq-wcI" firstAttribute="bottom" secondItem="Ze5-6b-2t3" secondAttribute="bottom" id="RPx-PI-7Xg"/>
-                            <constraint firstItem="tWc-Dq-wcI" firstAttribute="top" secondItem="Ze5-6b-2t3" secondAttribute="top" id="SdS-ul-q2q"/>
-                            <constraint firstAttribute="trailing" secondItem="tWc-Dq-wcI" secondAttribute="trailing" id="Swv-Gf-Rwn"/>
-                            <constraint firstAttribute="trailing" secondItem="YRO-k0-Ey4" secondAttribute="trailing" id="TQA-XW-tRk"/>
-                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="bottom" secondItem="Ze5-6b-2t3" secondAttribute="bottom" id="duK-uY-Gun"/>
-                            <constraint firstItem="tWc-Dq-wcI" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leading" id="kV7-tw-vXt"/>
-                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="top" secondItem="Ze5-6b-2t3" secondAttribute="top" id="xPn-NY-SIU"/>
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="1a2-6s-vTC"/>
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="4X2-HB-R7a"/>
                         </constraints>
                     </view>
                 </viewController>
@@ -39,6 +33,5 @@
     </scenes>
     <resources>
         <image name="LaunchImage" width="168" height="185"/>
-        <image name="LaunchBackground" width="1" height="1"/>
     </resources>
 </document>

+ 102 - 94
mobile/ios/Runner/Info.plist

@@ -1,97 +1,105 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
-	<dict>
-		<key>CFBundleDevelopmentRegion</key>
-		<string>$(DEVELOPMENT_LANGUAGE)</string>
-		<key>CFBundleDisplayName</key>
-		<string>Immich</string>
-		<key>CFBundleExecutable</key>
-		<string>$(EXECUTABLE_NAME)</string>
-		<key>CFBundleIdentifier</key>
-		<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
-		<key>CFBundleInfoDictionaryVersion</key>
-		<string>6.0</string>
-		<key>CFBundleName</key>
-		<string>immich_mobile</string>
-		<key>CFBundlePackageType</key>
-		<string>APPL</string>
-		<key>CFBundleShortVersionString</key>
-		<string>1.42.0</string>
-		<key>CFBundleSignature</key>
-		<string>????</string>
-		<key>CFBundleVersion</key>
-		<string>79</string>
-		<key>LSRequiresIPhoneOS</key>
-		<true/>
-		<key>MGLMapboxMetricsEnabledSettingShownInApp</key>
-		<true/>
-		<key>NSAppTransportSecurity</key>
-		<dict>
-			<key>NSAllowsArbitraryLoads</key>
-			<true/>
-		</dict>
-		<key>NSLocationAlwaysUsageDescription</key>
-		<string>Enable location setting to show position of assets on map</string>
-		<key>NSLocationWhenInUseUsageDescription</key>
-		<string>Enable location setting to show position of assets on map</string>
-		<key>NSPhotoLibraryUsageDescription</key>
-		<string>We need to manage backup your photos album</string>
-		<key>NSPhotoLibraryAddUsageDescription</key>
-		<string>We need to manage backup your photos album</string>
-		<key>NSCameraUsageDescription</key>
-		<string>We need to access the camera to let you take beautiful video using this app</string>
-		<key>NSMicrophoneUsageDescription</key>
-		<string>We need to access the microphone to let you take beautiful video using this app</string>
-		<key>UILaunchStoryboardName</key>
-		<string>LaunchScreen</string>
-		<key>UIMainStoryboardFile</key>
-		<string>Main</string>
-		<key>UISupportedInterfaceOrientations</key>
-		<array>
-			<string>UIInterfaceOrientationPortrait</string>
-			<string>UIInterfaceOrientationLandscapeLeft</string>
-			<string>UIInterfaceOrientationLandscapeRight</string>
-		</array>
-		<key>UISupportedInterfaceOrientations~ipad</key>
-		<array>
-			<string>UIInterfaceOrientationPortrait</string>
-			<string>UIInterfaceOrientationPortraitUpsideDown</string>
-			<string>UIInterfaceOrientationLandscapeLeft</string>
-			<string>UIInterfaceOrientationLandscapeRight</string>
-		</array>
-		<key>UIViewControllerBasedStatusBarAppearance</key>
-		<true/>
-		<key>io.flutter.embedded_views_preview</key>
-		<true/>
-		<key>ITSAppUsesNonExemptEncryption</key>
-		<false/>
-		<key>CADisableMinimumFrameDurationOnPhone</key>
-		<true/>
-		<key>LSApplicationQueriesSchemes</key>
-		<array>
-			<string>https</string>
-		</array>
-		<key>CFBundleLocalizations</key>
-		<array>
-			<string>cs</string>
-			<string>da</string>
-			<string>de</string>
-			<string>en</string>
-			<string>es</string>
-			<string>fi</string>
-			<string>fr</string>
-			<string>it</string>
-			<string>ja</string>
-			<string>ko</string>
-			<string>nl</string>
-			<string>pl</string>
-			<string>pt</string>
-			<string>ru</string>
-			<string>sk</string>
-			<string>zh</string>
-		</array>
-		<key>UIStatusBarHidden</key>
-		<false/>
-	</dict>
-</plist>
+  <dict>
+    <key>CFBundleDevelopmentRegion</key>
+    <string>$(DEVELOPMENT_LANGUAGE)</string>
+    <key>CFBundleDisplayName</key>
+    <string>Immich</string>
+    <key>CFBundleExecutable</key>
+    <string>$(EXECUTABLE_NAME)</string>
+    <key>CFBundleIdentifier</key>
+    <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
+    <key>CFBundleInfoDictionaryVersion</key>
+    <string>6.0</string>
+    <key>CFBundleName</key>
+    <string>immich_mobile</string>
+    <key>CFBundlePackageType</key>
+    <string>APPL</string>
+    <key>CFBundleShortVersionString</key>
+    <string>1.43.0</string>
+    <key>CFBundleSignature</key>
+    <string>????</string>
+    <key>CFBundleVersion</key>
+    <string>82</string>
+    <key>LSRequiresIPhoneOS</key>
+    <true />
+    <key>MGLMapboxMetricsEnabledSettingShownInApp</key>
+    <true />
+    <key>NSAppTransportSecurity</key>
+    <dict>
+      <key>NSAllowsArbitraryLoads</key>
+      <true />
+    </dict>
+    <key>NSLocationAlwaysUsageDescription</key>
+    <string>Enable location setting to show position of assets on map</string>
+
+    <key>NSLocationWhenInUseUsageDescription</key>
+    <string>Enable location setting to show position of assets on map</string>
+
+    <key>NSPhotoLibraryUsageDescription</key>
+    <string>We need to manage backup your photos album</string>
+
+    <key>NSPhotoLibraryAddUsageDescription</key>
+    <string>We need to manage backup your photos album</string>
+
+    <key>NSCameraUsageDescription</key>
+    <string>We need to access the camera to let you take beautiful video using this app</string>
+
+    <key>NSMicrophoneUsageDescription</key>
+    <string>We need to access the microphone to let you take beautiful video using this app</string>
+
+    <key>UILaunchStoryboardName</key>
+    <string>LaunchScreen</string>
+    <key>UIMainStoryboardFile</key>
+    <string>Main</string>
+    <key>UISupportedInterfaceOrientations</key>
+    <array>
+      <string>UIInterfaceOrientationPortrait</string>
+      <string>UIInterfaceOrientationLandscapeLeft</string>
+      <string>UIInterfaceOrientationLandscapeRight</string>
+    </array>
+    <key>UISupportedInterfaceOrientations~ipad</key>
+    <array>
+      <string>UIInterfaceOrientationPortrait</string>
+      <string>UIInterfaceOrientationPortraitUpsideDown</string>
+      <string>UIInterfaceOrientationLandscapeLeft</string>
+      <string>UIInterfaceOrientationLandscapeRight</string>
+    </array>
+
+    <key>UIViewControllerBasedStatusBarAppearance</key>
+    <true />
+    <key>io.flutter.embedded_views_preview</key>
+    <true />
+    <key>ITSAppUsesNonExemptEncryption</key>
+    <false />
+    <key>CADisableMinimumFrameDurationOnPhone</key>
+    <true />
+
+
+    <key>LSApplicationQueriesSchemes</key>
+    <array>
+      <string>https</string>
+    </array>
+
+    <key>CFBundleLocalizations</key>
+    <array>
+      <string>cs</string>
+      <string>da</string>
+      <string>de</string>
+      <string>en</string>
+      <string>es</string>
+      <string>fi</string>
+      <string>fr</string>
+      <string>it</string>
+      <string>ja</string>
+      <string>ko</string>
+      <string>nl</string>
+      <string>pl</string>
+      <string>pt</string>
+      <string>ru</string>
+      <string>sk</string>
+      <string>zh</string>
+    </array>
+  </dict>
+</plist>

+ 23 - 5
mobile/lib/shared/views/splash_screen.dart

@@ -57,12 +57,30 @@ class SplashScreenPage extends HookConsumerWidget {
       [],
     );
 
-    return const Scaffold(
+    return Scaffold(
       body: Center(
-        child: Image(
-          image: AssetImage('assets/immich-logo-no-outline.png'),
-          width: 200,
-          filterQuality: FilterQuality.high,
+        child: Column(
+          mainAxisAlignment: MainAxisAlignment.center,
+          crossAxisAlignment: CrossAxisAlignment.center,
+          children: [
+            const Image(
+              image: AssetImage('assets/immich-logo-no-outline.png'),
+              width: 200,
+              filterQuality: FilterQuality.high,
+            ),
+            Padding(
+              padding: const EdgeInsets.all(16.0),
+              child: Text(
+                'IMMICH',
+                style: TextStyle(
+                  fontFamily: 'SnowburstOne',
+                  fontWeight: FontWeight.bold,
+                  fontSize: 48,
+                  color: Theme.of(context).primaryColor,
+                ),
+              ),
+            ),
+          ],
         ),
       ),
     );

+ 1 - 4
mobile/makefile

@@ -8,7 +8,4 @@ create_app_icon:
 	flutter pub run flutter_launcher_icons:main
 
 build_release_android:
-	flutter build appbundle
-
-create_splash:
-	flutter pub run flutter_native_splash:create
+	flutter build appbundle

+ 4 - 18
mobile/pubspec.lock

@@ -325,7 +325,7 @@ packages:
       name: flutter_launcher_icons
       url: "https://pub.dartlang.org"
     source: hosted
-    version: "0.9.3"
+    version: "0.9.2"
   flutter_lints:
     dependency: "direct dev"
     description:
@@ -345,13 +345,6 @@ packages:
       url: "https://pub.dartlang.org"
     source: hosted
     version: "0.14.0"
-  flutter_native_splash:
-    dependency: "direct dev"
-    description:
-      name: flutter_native_splash
-      url: "https://pub.dartlang.org"
-    source: hosted
-    version: "2.2.17"
   flutter_plugin_android_lifecycle:
     dependency: transitive
     description:
@@ -457,7 +450,7 @@ packages:
       name: html
       url: "https://pub.dartlang.org"
     source: hosted
-    version: "0.15.1"
+    version: "0.15.0"
   http:
     dependency: "direct main"
     description:
@@ -480,12 +473,12 @@ packages:
     source: hosted
     version: "4.0.1"
   image:
-    dependency: "direct overridden"
+    dependency: transitive
     description:
       name: image
       url: "https://pub.dartlang.org"
     source: hosted
-    version: "4.0.12"
+    version: "3.2.0"
   image_picker:
     dependency: "direct main"
     description:
@@ -1098,13 +1091,6 @@ packages:
       url: "https://pub.dartlang.org"
     source: hosted
     version: "0.3.1"
-  universal_io:
-    dependency: transitive
-    description:
-      name: universal_io
-      url: "https://pub.dartlang.org"
-    source: hosted
-    version: "2.0.4"
   url_launcher:
     dependency: "direct main"
     description:

+ 1 - 5
mobile/pubspec.yaml

@@ -56,14 +56,10 @@ dev_dependencies:
   hive_generator: ^1.1.2
   build_runner: ^2.2.1
   auto_route_generator: ^5.0.2
-  flutter_launcher_icons: ^0.9.2
-  flutter_native_splash: ^2.2.17
+  flutter_launcher_icons: "^0.9.2"
   integration_test:
     sdk: flutter
 
-dependency_overrides: 
-  image: ^4.0.12
-
 flutter:
   uses-material-design: true
   assets: