iOS: Add a variable to customize where the launch image is taken from
For those who are providing their own launch images for their iOS projects then QMAKE_IOS_LAUNCH_SCREEN can be set to point to the location where the launch image to be used over the default. [ChangeLog][Platform Specific Changes][iOS] Added support for specifying a launch image to be used for an iOS project. This can be achieved by using QMAKE_IOS_LAUNCH_SCREEN. Change-Id: Ibb236655b282132ab5eee747986a93abb9802200 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
This commit is contained in:
parent
d25589e052
commit
64491c9b72
@ -29,12 +29,15 @@ macx-xcode {
|
||||
QMAKE_MAC_XCODE_SETTINGS += device_family
|
||||
|
||||
ios {
|
||||
# Set up default LaunchScreen
|
||||
qmake_launch_screen = LaunchScreen.storyboard
|
||||
qmake_copy_launch_screen.input = $$QMAKESPEC/$$qmake_launch_screen
|
||||
qmake_copy_launch_screen.output = $$OUT_PWD/$${TARGET}.xcodeproj/$$qmake_launch_screen
|
||||
QMAKE_SUBSTITUTES += qmake_copy_launch_screen
|
||||
qmake_launch_screens.files = $$qmake_copy_launch_screen.output
|
||||
isEmpty(QMAKE_IOS_LAUNCH_SCREEN) {
|
||||
qmake_launch_screen = LaunchScreen.storyboard
|
||||
qmake_copy_launch_screen.input = $$QMAKESPEC/$$qmake_launch_screen
|
||||
qmake_copy_launch_screen.output = $$OUT_PWD/$${TARGET}.xcodeproj/$$qmake_launch_screen
|
||||
QMAKE_SUBSTITUTES += qmake_copy_launch_screen
|
||||
qmake_launch_screens.files = $$qmake_copy_launch_screen.output
|
||||
} else {
|
||||
qmake_launch_screens.files = $$QMAKE_IOS_LAUNCH_SCREEN
|
||||
}
|
||||
QMAKE_BUNDLE_DATA += qmake_launch_screens
|
||||
}
|
||||
}
|
||||
|
@ -27,7 +27,7 @@
|
||||
<key>NOTE</key>
|
||||
<string>This file was generated by Qt/QMake.</string>
|
||||
<key>UILaunchStoryboardName</key>
|
||||
<string>LaunchScreen</string>
|
||||
<string>${IOS_LAUNCH_SCREEN}</string>
|
||||
<key>UISupportedInterfaceOrientations</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
|
@ -2260,6 +2260,9 @@
|
||||
\row
|
||||
\li \c ${WATCHOS_DEPLOYMENT_TARGET}
|
||||
\li Expands to the value of QMAKE_WATCHOS_DEPLOYMENT_TARGET.
|
||||
\row
|
||||
\li \c ${IOS_LAUNCH_SCREEN}
|
||||
\li Expands to the value of QMAKE_IOS_LAUNCH_SCREEN.
|
||||
\endtable
|
||||
|
||||
\note When using the Xcode generator, the above \c{${var}}-style
|
||||
@ -2283,6 +2286,13 @@
|
||||
|
||||
For more information, see \l {Expressing Supported iOS Versions}.
|
||||
|
||||
\section1 QMAKE_IOS_LAUNCH_SCREEN
|
||||
|
||||
\note This variable is used on the iOS platform only.
|
||||
|
||||
Specifies the launch screen that is used by the application. If this is not set
|
||||
then a default launch screen is used.
|
||||
|
||||
\section1 QMAKE_LFLAGS
|
||||
|
||||
Specifies a general set of flags that are passed to
|
||||
|
@ -1615,6 +1615,12 @@ ProjectBuilderMakefileGenerator::writeMakeParts(QTextStream &t)
|
||||
plist_in_text.replace(QLatin1String("@TYPEINFO@"),
|
||||
(project->isEmpty("QMAKE_PKGINFO_TYPEINFO")
|
||||
? QString::fromLatin1("????") : project->first("QMAKE_PKGINFO_TYPEINFO").left(4).toQString()));
|
||||
QString launchScreen = var("QMAKE_IOS_LAUNCH_SCREEN");
|
||||
if (launchScreen.isEmpty())
|
||||
launchScreen = QLatin1String("LaunchScreen");
|
||||
else
|
||||
launchScreen = QFileInfo(launchScreen).baseName();
|
||||
plist_in_text.replace(QLatin1String("${IOS_LAUNCH_SCREEN}"), launchScreen);
|
||||
QFile plist_out_file(Option::output_dir + "/Info.plist");
|
||||
if (plist_out_file.open(QIODevice::WriteOnly | QIODevice::Text)) {
|
||||
QTextStream plist_out(&plist_out_file);
|
||||
|
@ -798,6 +798,13 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
|
||||
commonSedArgs << "-e \"s,\\$${WATCHOS_DEPLOYMENT_TARGET},"
|
||||
<< project->first("QMAKE_WATCHOS_DEPLOYMENT_TARGET").toQString() << ",g\" ";
|
||||
|
||||
QString launchScreen = var("QMAKE_IOS_LAUNCH_SCREEN");
|
||||
if (launchScreen.isEmpty())
|
||||
launchScreen = QLatin1String("LaunchScreen");
|
||||
else
|
||||
launchScreen = QFileInfo(launchScreen).baseName();
|
||||
commonSedArgs << "-e \"s,\\$${IOS_LAUNCH_SCREEN}," << launchScreen << ",g\" ";
|
||||
|
||||
if (!isFramework) {
|
||||
ProString app_bundle_name = var("QMAKE_APPLICATION_BUNDLE_NAME");
|
||||
if (app_bundle_name.isEmpty())
|
||||
|
Loading…
x
Reference in New Issue
Block a user