Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
C++

iPhone X and iPad Pro resolution support on Delphi 10.3.1

the future of starts demands massive productivity

With Delphi 10.3.1, you can build applications for the iPhone X series devices and iPad Pro with native resolution support.

To support the newer resolutions, the overall configuration and some of the image names have changed. While this applies to new projects, existing projects opened with 10.3.1 require a couple of quick project changes.

  • Go to the Deployment Manager window
  • Click on the Revert to Default button

The steps above, provided by MVP Dave Nottage (thanks Dave!), work for the most common cases, but they won’t preserve the existing configuration. See “Additional Information” below for steps to manually change your existing project configuration, instead.

Additional Information

While working to add support for more launch images (addressing the iPhone X family and the iPad Pro family of devices) for RAD Studio 10.3.1, we decided to change the naming scheme used in already existing launch image filenames for consistency.

For this reason, there is a potential issue for device models whose launch image files were renamed in the 10.3.1 Rio release. The following table summarizes the changes in the launch image filenames and the affected device models:

Old launch image filename

New launch image filename

Affected device models

[email protected]

[email protected]

iPhone 5, 5s, 5c and SE plus iPod touch (6th generation)

[email protected]

[email protected]

iPhone 6, 6s, 7 and 8

[email protected]

[email protected]

[email protected]

[email protected]

iPhone 6 Plus, 6s Plus, 7 Plus and 8 Plus

[email protected]

[email protected]

[email protected]

[email protected]

iPhone X and XS

Default-Portrait@2x~ipad.png

Default-Landscape@2x~ipad.png

Default-1536w-2048h@2x~ipad.png

Default-Landscape-1536w-2048h@2x~ipad.png

iPad Air, Air 2, Mini 2, Mini 3, Mini 4, 9.7-inch (4th generation), 9.7-inch (5th generation), 9.7-inch (6th generation) and 9.7-inch Pro

In order to enable the native resolution of the iPhone XS model, the Info.plist file must have the following declaration:

<dict>

 <key>UILaunchImageSize</key>

 <string>{375, 812}</string>

 <key>UILaunchImageName</key>

 <string>Default-1125w-2436h</string>

 <key>UILaunchImageMinimumOSVersion</key>

 <string>11.0</string>

 <key>UILaunchImageOrientation</key>

 <string>Portrait</string>

</dict>

<dict>

 <key>UILaunchImageSize</key>

 <string>{375, 812}</string>

 <key>UILaunchImageName</key>

 <string>Default-Landscape-1125w-2436h</string>

 <key>UILaunchImageMinimumOSVersion</key>

 <string>11.0</string>

 <key>UILaunchImageOrientation</key>

 <string>Landscape</string>

</dict>

The launch images are being declared in the Info.plist file using the new naming scheme, but the launch image files are being deployed with the app using the old naming scheme (from the 10.3 Rio release or older versions).

This naming scheme mismatch is causing the iOS runtime to not be able to choose a launch image for the iPhone XS model and its native resolution is disabled. Making the changes outlined above should resolve this, in case “Revert to Default” in the Deployment Manager doesn’t work.

Further information can be found in the following Quality Portal entry: RSP-23800


Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

About author

Marco is one of the RAD Studio Product Managers, focused on Delphi. He's the best selling author of over 20 books on Delphi.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

IN THE ARTICLES