From 891def8d925a77876007ec4ddce9602f4802e689 Mon Sep 17 00:00:00 2001 From: Benoit Martins Date: Tue, 4 Nov 2025 15:37:11 +0100 Subject: [PATCH] Update Launch Screen (Spash Screen) --- Linphone/Info.plist | 11 +------ Linphone/Launch Screen.storyboard | 44 +++++++++++++++++++++++++++ Linphone/SplashScreen.swift | 21 ++++++------- LinphoneApp.xcodeproj/project.pbxproj | 20 +++++++++--- 4 files changed, 71 insertions(+), 25 deletions(-) create mode 100644 Linphone/Launch Screen.storyboard diff --git a/Linphone/Info.plist b/Linphone/Info.plist index d546482b6..51c64d8cb 100644 --- a/Linphone/Info.plist +++ b/Linphone/Info.plist @@ -115,12 +115,6 @@ - ITSAppUsesNonExemptEncryption - - ITSEncryptionExportComplianceCode - b5cb085f-772a-4a4f-8c77-5d1332b1f93f - NSCalendarsWriteOnlyAccessUsageDescription - NSSupportsSuddenTermination UIAppFonts @@ -139,9 +133,6 @@ audio UILaunchScreen - - UIImageName - linphone - + diff --git a/Linphone/Launch Screen.storyboard b/Linphone/Launch Screen.storyboard new file mode 100644 index 000000000..b4051d6b3 --- /dev/null +++ b/Linphone/Launch Screen.storyboard @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Linphone/SplashScreen.swift b/Linphone/SplashScreen.swift index e15c4aaac..f7a154081 100644 --- a/Linphone/SplashScreen.swift +++ b/Linphone/SplashScreen.swift @@ -20,20 +20,19 @@ import SwiftUI struct SplashScreen: View { - var body: some View { - GeometryReader { _ in - VStack { - Spacer() - HStack { - Spacer() - Image("linphone") - Spacer() - } - Spacer() - } + ZStack { + Color.white + .ignoresSafeArea() + Image("linphone") + .resizable() + .renderingMode(.template) + .aspectRatio(contentMode: .fit) + .frame(width: 240, height: 128) + .foregroundColor(Color.orangeMain500) } + .frame(maxWidth: .infinity, maxHeight: .infinity) .ignoresSafeArea(.all) } } diff --git a/LinphoneApp.xcodeproj/project.pbxproj b/LinphoneApp.xcodeproj/project.pbxproj index 627028a27..eda89937e 100644 --- a/LinphoneApp.xcodeproj/project.pbxproj +++ b/LinphoneApp.xcodeproj/project.pbxproj @@ -199,6 +199,7 @@ D7F4D9CB2B5FD27200CDCD76 /* CallsListFragment.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7F4D9CA2B5FD27200CDCD76 /* CallsListFragment.swift */; }; D7F5F6412C359F3B007FCF2F /* SipAddressesPopup.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7F5F6402C359F3B007FCF2F /* SipAddressesPopup.swift */; }; D7FB55112AD447FD00A5AB15 /* RegisterFragment.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7FB55102AD447FD00A5AB15 /* RegisterFragment.swift */; }; + D7FC8E4A2EBA12F90080C09D /* Launch Screen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D7FC8E492EBA12F90080C09D /* Launch Screen.storyboard */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -422,6 +423,7 @@ D7F4D9CA2B5FD27200CDCD76 /* CallsListFragment.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CallsListFragment.swift; sourceTree = ""; }; D7F5F6402C359F3B007FCF2F /* SipAddressesPopup.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SipAddressesPopup.swift; sourceTree = ""; }; D7FB55102AD447FD00A5AB15 /* RegisterFragment.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RegisterFragment.swift; sourceTree = ""; }; + D7FC8E492EBA12F90080C09D /* Launch Screen.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = "Launch Screen.storyboard"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */ @@ -632,6 +634,7 @@ D719ABB52ABC67BF00B41C10 /* Linphone */ = { isa = PBXGroup; children = ( + D7FC8E492EBA12F90080C09D /* Launch Screen.storyboard */, D7A03FC52ACC458A0081A588 /* SplashScreen.swift */, D719ABB62ABC67BF00B41C10 /* LinphoneApp.swift */, D777DBB12AE12C4000565A99 /* Contacts */, @@ -1195,6 +1198,7 @@ D7D24D142AC1B4E800C6F35B /* NotoSans-Regular.ttf in Resources */, D7D24D182AC1B4E800C6F35B /* NotoSans-ExtraBold.ttf in Resources */, D7D24D152AC1B4E800C6F35B /* NotoSans-Light.ttf in Resources */, + D7FC8E4A2EBA12F90080C09D /* Launch Screen.storyboard in Resources */, D737AEEF2DA011F2005C1280 /* Localizable.strings in Resources */, D783C77D2B1089B200622CC2 /* assistant_third_party_default_values in Resources */, D7D24D162AC1B4E800C6F35B /* NotoSans-SemiBold.ttf in Resources */, @@ -1684,7 +1688,10 @@ GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = Linphone/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = Linphone; + INFOPLIST_KEY_ITSAppUsesNonExemptEncryption = YES; + INFOPLIST_KEY_ITSEncryptionExportComplianceCode = "b5cb085f-772a-4a4f-8c77-5d1332b1f93f"; INFOPLIST_KEY_NSCalendarsUsageDescription = "Deprecated - Prior to iOS 17 full calendar access is required"; + INFOPLIST_KEY_NSCalendarsWriteOnlyAccessUsageDescription = ""; INFOPLIST_KEY_NSCameraUsageDescription = "Camera usage is required for video VOIP calls"; INFOPLIST_KEY_NSContactsUsageDescription = "Make calls with your friends"; INFOPLIST_KEY_NSLocalNetworkUsageDescription = "App requires access to the local network to establish VoIP connections"; @@ -1696,8 +1703,9 @@ INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; "INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents[sdk=iphoneos*]" = YES; "INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents[sdk=iphonesimulator*]" = YES; - "INFOPLIST_KEY_UILaunchScreen_Generation[sdk=iphoneos*]" = YES; - "INFOPLIST_KEY_UILaunchScreen_Generation[sdk=iphonesimulator*]" = YES; + "INFOPLIST_KEY_UILaunchScreen_Generation[sdk=iphoneos*]" = NO; + "INFOPLIST_KEY_UILaunchScreen_Generation[sdk=iphonesimulator*]" = NO; + INFOPLIST_KEY_UILaunchStoryboardName = "Launch Screen"; INFOPLIST_KEY_UIStatusBarStyle = UIStatusBarStyleDefault; "INFOPLIST_KEY_UIStatusBarStyle[sdk=iphoneos*]" = UIStatusBarStyleDefault; "INFOPLIST_KEY_UIStatusBarStyle[sdk=iphonesimulator*]" = UIStatusBarStyleDefault; @@ -1742,7 +1750,10 @@ GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = Linphone/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = Linphone; + INFOPLIST_KEY_ITSAppUsesNonExemptEncryption = YES; + INFOPLIST_KEY_ITSEncryptionExportComplianceCode = "b5cb085f-772a-4a4f-8c77-5d1332b1f93f"; INFOPLIST_KEY_NSCalendarsUsageDescription = "Deprecated - Prior to iOS 17 full calendar access is required"; + INFOPLIST_KEY_NSCalendarsWriteOnlyAccessUsageDescription = ""; INFOPLIST_KEY_NSCameraUsageDescription = "Camera usage is required for video VOIP calls"; INFOPLIST_KEY_NSContactsUsageDescription = "Make calls with your friends"; INFOPLIST_KEY_NSLocalNetworkUsageDescription = "App requires access to the local network to establish VoIP connections"; @@ -1754,8 +1765,9 @@ INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; "INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents[sdk=iphoneos*]" = YES; "INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents[sdk=iphonesimulator*]" = YES; - "INFOPLIST_KEY_UILaunchScreen_Generation[sdk=iphoneos*]" = YES; - "INFOPLIST_KEY_UILaunchScreen_Generation[sdk=iphonesimulator*]" = YES; + "INFOPLIST_KEY_UILaunchScreen_Generation[sdk=iphoneos*]" = NO; + "INFOPLIST_KEY_UILaunchScreen_Generation[sdk=iphonesimulator*]" = NO; + INFOPLIST_KEY_UILaunchStoryboardName = "Launch Screen"; INFOPLIST_KEY_UIStatusBarStyle = UIStatusBarStyleDefault; "INFOPLIST_KEY_UIStatusBarStyle[sdk=iphoneos*]" = UIStatusBarStyleDefault; "INFOPLIST_KEY_UIStatusBarStyle[sdk=iphonesimulator*]" = UIStatusBarStyleDefault;