5 Replies Latest reply on Jul 6, 2016 10:00 AM by kerrishotts

    ERROR ITMS-90096: "Your binary is not optimized for iPhone 5 - "

    jeroenb25

      I have an issue during the upload of the IPA-file in application loader. Everything will be fine, but there is something wrong with the splash screen for iPhone 5. The following message will be displayed:

       

      ERROR ITMS-90096: "Your binary is not optimized for iPhone 5 - New iPhone apps and app updates submitted must support the 4-inch display on iPhone 5 and must include a launch image with the -568h size modifier immediately following the <basename> portion of the launch image's filename. Launch images must be PNG files and located at the top-level of your bundle, or provided within each .lproj folder if you localize your launch images. Learn more about iPhone 5 support and app launch images by reviewing the 'iOS Human Interface Guidelines' at 'https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/ IconsImages/IconsImages.html#//apple_ref/doc/uid/TP40006556-CH14-SW5' and the 'iOS App Programming Guide' at 'https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammin gGuide/App-RelatedResources/App-RelatedResources.html#//apple_ref/doc/uid/TP40007072-CH6-S W12'."

       

      I tried a lot of options which I found on stackoverflow etc. Default-568h@2x.png in the root, Default-568h@2x.png in a subfolder. I think there is something wrong in the config.xml... Do have somebody any idea?

        • 1. Re: ERROR ITMS-90096: "Your binary is not optimized for iPhone 5 - "
          kerrishotts Adobe Community Professional

          You need to provide the correct launch screen and include a reference to it in your config.xml file. Can you share your config.xml file so we can help you better? Also see Splashscreen - Apache Cordova for some good examples of what a typical config.xml would look like.

          • 2. Re: ERROR ITMS-90096: "Your binary is not optimized for iPhone 5 - "
            jeroenb25 Level 1

            We updated the app for the last time a few months ago. Then it worked well. Below the current state of the config.xml code.

             

            <widget id="com.company.xxxxxxxx"

                    version="1.0.3"

                    versionCode="146"

                    xmlns="http://www.w3.org/ns/widgets"

                    xmlns:gap="http://phonegap.com/ns/1.0">

             

             

                <name>Company</name>

             

             

                <gap:platform name="android" />

                <gap:platform name="ios" />

             

             

                <gap:config-file platform="ios" parent="CFBundleVersion">

                    <string>146</string>

                </gap:config-file>

             

             

                <gap:config-file platform="ios" parent="CFBundleShortVersionString">

                    <string>1.0.3</string>

                </gap:config-file>

             

             

                <description>

                   

                </description>

                <author email="support@company.nl" href="http://www.company.nl">

                    company

                </author>

                <content src="index.html" />

                <preference name="permissions" value="none" />

                <preference name="orientation" value="portrait" />

                <preference name="target-device" value="universal" />

                <preference name="fullscreen" value="true" />

                <preference name="webviewbounce" value="true" />

                <preference name="prerendered-icon" value="true" />

                <preference name="stay-in-webview" value="false" />

                <preference name="ios-statusbarstyle" value="black-opaque" />

                <preference name="detect-data-types" value="true" />

                <preference name="exit-on-suspend" value="false" />

                <preference name="show-splash-screen-spinner" value="true" />

                <preference name="auto-hide-splash-screen" value="true" />

                <preference name="disable-cursor" value="false" />

                <preference name="android-minSdkVersion" value="14" />

                <preference name="android-installLocation" value="auto" />

                <gap:plugin name="org.apache.cordova.battery-status" />

                <gap:plugin name="org.apache.cordova.camera" />

                <gap:plugin name="org.apache.cordova.media-capture" />

                <gap:plugin name="org.apache.cordova.console" />

                <gap:plugin name="org.apache.cordova.contacts" />

                <gap:plugin name="org.apache.cordova.device" />

                <gap:plugin name="org.apache.cordova.device-motion" />

                <gap:plugin name="org.apache.cordova.device-orientation" />

                <gap:plugin name="org.apache.cordova.dialogs" />

                <gap:plugin name="org.apache.cordova.file" />

                <gap:plugin name="org.apache.cordova.file-transfer" />

                <gap:plugin name="org.apache.cordova.geolocation" />

                <gap:plugin name="org.apache.cordova.globalization" />

                <gap:plugin name="org.apache.cordova.inappbrowser" />

                <gap:plugin name="org.apache.cordova.media" />

                <gap:plugin name="org.apache.cordova.network-information" />

                <gap:plugin name="org.apache.cordova.splashscreen" />

                <gap:plugin name="org.apache.cordova.vibration" />

                <icon src="icon.png" />

                <icon src="res/icon/android/icon-36-ldpi.png" gap:platform="android" gap:qualifier="ldpi" />

                <icon src="res/icon/android/icon-48-mdpi.png" gap:platform="android" gap:qualifier="mdpi" />

                <icon src="res/icon/android/icon-72-hdpi.png" gap:platform="android" gap:qualifier="hdpi" />

                <icon src="res/icon/android/icon-96-xhdpi.png" gap:platform="android" gap:qualifier="xhdpi" />

                <icon src="res/icon/blackberry/icon-80.png" gap:platform="blackberry" />

                <icon src="res/icon/blackberry/icon-80.png" gap:platform="blackberry" gap:state="hover" />

                <icon src="res/icon/ios/icon-57.png" gap:platform="ios" width="57" height="57" />

                <icon src="res/icon/ios/icon-72.png" gap:platform="ios" width="72" height="72" />

                <icon src="res/icon/ios/icon-57@2x.png" gap:platform="ios" width="114" height="114" />

                <icon src="res/icon/ios/icon-72@2x.png" gap:platform="ios" width="144" height="144" />

                <icon src="res/icon/webos/icon-64.png" gap:platform="webos" />

                <icon src="res/icon/windows-phone/icon-48.png" gap:platform="winphone" />

                <icon src="res/icon/windows-phone/icon-173-tile.png" gap:platform="winphone" gap:role="background" />

             

             

                <splash src="splash.png" />

             

             

                <gap:splash src="res/screen/android/screen-ldpi-portrait.png" gap:platform="android" gap:qualifier="port-ldpi" />

                <gap:splash src="res/screen/android/screen-mdpi-portrait.png" gap:platform="android" gap:qualifier="port-mdpi" />

                <gap:splash src="res/screen/android/screen-hdpi-portrait.png" gap:platform="android" gap:qualifier="port-hdpi" />

                <gap:splash src="res/screen/android/screen-xhdpi-portrait.png" gap:platform="android" gap:qualifier="port-xhdpi" />

                <gap:splash src="res/screen/blackberry/screen-225.png" gap:platform="blackberry" />

             

             

                <!-- <gap:splash src="res/screen/ios/screen-iphone-portrait.png" gap:platform="ios" width="320" height="480" />

                <gap:splash src="res/screen/ios/screen-iphone-portrait-2x.png" gap:platform="ios" width="640" height="960" />

                <gap:splash src="res/screen/ios/screen-iphone-portrait-568h-2x.png" gap:platform="ios" width="640" height="1136" /> -->

             

             

                <gap:splash src="Default.png"         gap:platform="ios"     width="320" height="480" />

                <gap:splash src="Default@2x.png"      gap:platform="ios"     width="640" height="960" />

                <gap:splash src="Default-568h@2x.png" gap:platform="ios"     width="640" height="1136" />

             

             

                <gap:splash src="res/screen/ios/screen-ipad-portrait.png" gap:platform="ios" width="768" height="1024" />

                <gap:splash src="res/screen/ios/screen-ipad-landscape.png" gap:platform="ios" width="1024" height="768" />

                <gap:splash src="res/screen/windows-phone/screen-portrait.jpg" gap:platform="winphone" />

                <access origin="*" />

                <plugin name="cordova-plugin-whitelist" version="1" />

                <allow-intent href="http://*/*" />

                <allow-intent href="https://*/*" />

                <allow-intent href="tel:*" />

                <allow-intent href="sms:*" />

                <allow-intent href="mailto:*" />

                <allow-intent href="geo:*" />

                <platform name="android">

                    <allow-intent href="market:*" />

                </platform>

                <platform name="ios">

                    <allow-intent href="itms:*" />

                    <allow-intent href="itms-apps:*" />

                </platform>

            </widget>

            • 3. Re: ERROR ITMS-90096: "Your binary is not optimized for iPhone 5 - "
              kerrishotts Adobe Community Professional

              So, you're using a lot of the old style tags in your config.xml; that might be part of it. Check the PGB documentation for up-to-date examples.

               

              I've also had occasions where (for whatever reason) the splash screen is not the correct size and disagrees with what config.xml has. Make absolutely certain that the file you're providing matches the resolution indicated in config.xml.

               

              Also, just so you know: you should be providing more launch screens and icons for newer devices (like iPhone 6/6s and 6+/6s+) as well.

              • 4. Re: ERROR ITMS-90096: "Your binary is not optimized for iPhone 5 - "
                jeroenb25 Level 1

                I changed a few things into my config.xml. I have the following code and this will be continue with the application loader. After that I received the following message from iOs developers, what do I wrong?

                 

                 

                Dear developer,

                We have discovered one or more issues with your recent delivery for "xxxx". Your delivery was successful, but you may wish to correct the following issues in your next delivery:

                Missing recommended icon file - The bundle does not contain an app icon for iPhone / iPod Touch of exactly '120x120' pixels, in .png format for iOS versions >= 7.0.

                Missing recommended icon file - The bundle does not contain an app icon for iPad of exactly '76x76' pixels, in .png format for iOS versions >= 7.0.

                Missing recommended icon file - The bundle does not contain an app icon for iPad of exactly '152x152' pixels, in .png format for iOS versions >= 7.0.

                After you’ve corrected the issues, you can use Xcode or Application Loader to upload a new binary to iTunes Connect.

                Regards,

                The App Store team

                 

                 

                  <icon src="icon.png"/>

                  <icon src="res/icon/ios/icon-57.png" gap:platform="ios" width="57" height="57" />

                  <icon src="res/icon/ios/icon-72.png" gap:platform="ios" width="72" height="72" />

                  <icon src="res/icon/ios/icon-57@2x.png" gap:platform="ios" width="114" height="114" />

                  <icon src="res/icon/ios/icon-72@2x.png" gap:platform="ios" width="144" height="144" />

                  <icon src="res/icon/ios/icon-76.png" platform="ios" width="76" height="76" />

                  <icon src="res/icon/ios/icon-76@2x.png" platform="ios" width="152" height="152" />

                  <icon src="res/icon/ios/icon-120.png" platform="ios" width="120" height="120"/>

                  <icon src="res/icon/ios/icon-120@2x.png" platform="ios" width="240" height="240" />

                  <icon src="res/icon/ios/icon-152.png" platform="ios" width="152" height="152"/>

                  <icon src="res/icon/ios/icon-152@2x.png" platform="ios" width="304" height="304" />

                 

                 

                  <platform name="android">

                    <icon src="res/icon/android/drawable-ldpi-icon.png" density="ldpi"/>

                    <icon src="res/icon/android/drawable-mdpi-icon.png" density="mdpi"/>

                    <icon src="res/icon/android/drawable-hdpi-icon.png" density="hdpi"/>

                    <icon src="res/icon/android/drawable-xhdpi-icon.png" density="xhdpi"/>

                    <icon src="res/icon/android/drawable-xxhdpi-icon.png" density="xxhdpi"/>

                    <icon src="res/icon/android/drawable-xxxhdpi-icon.png" density="xxxhdpi"/>

                    <splash src="res/screen/android/drawable-land-ldpi-screen.png" density="land-ldpi"/>

                    <splash src="res/screen/android/drawable-land-mdpi-screen.png" density="land-mdpi"/>

                    <splash src="res/screen/android/drawable-land-hdpi-screen.png" density="land-hdpi"/>

                    <splash src="res/screen/android/drawable-land-xhdpi-screen.png" density="land-xhdpi"/>

                    <splash src="res/screen/android/drawable-land-xxhdpi-screen.png" density="land-xxhdpi"/>

                    <splash src="res/screen/android/drawable-land-xxxhdpi-screen.png" density="land-xxxhdpi"/>

                    <splash src="res/screen/android/drawable-port-ldpi-screen.png" density="port-ldpi"/>

                    <splash src="res/screen/android/drawable-port-mdpi-screen.png" density="port-mdpi"/>

                    <splash src="res/screen/android/drawable-port-hdpi-screen.png" density="port-hdpi"/>

                    <splash src="res/screen/android/drawable-port-xhdpi-screen.png" density="port-xhdpi"/>

                    <splash src="res/screen/android/drawable-port-xxhdpi-screen.png" density="port-xxhdpi"/>

                    <splash src="res/screen/android/drawable-port-xxxhdpi-screen.png" density="port-xxxhdpi"/>

                  </platform>

                 

                 

                  <platform name="ios">

                 

                 

                    <!-- iPhone 6 / 6+ -->

                    <icon src="res/icon/ios/icon-60@3x.png" platform="ios" width="180" height="180" />

                 

                 

                    <!-- iPhone / iPod Touch  -->

                    <icon src="res/icon/ios/icon-60.png" platform="ios" width="60" height="60" />

                    <icon src="res/icon/ios/icon-60@2x.png" platform="ios" width="120" height="120" />

                 

                 

                    <!-- iPad -->

                    <icon src="res/icon/ios/icon-76.png" platform="ios" width="76" height="76" />

                    <icon src="res/icon/ios/icon-76@2x.png" platform="ios" width="152" height="152" />

                 

                 

                    <!-- Settings Icon -->

                    <icon src="res/icon/ios/icon-small.png" platform="ios" width="29" height="29" />

                    <icon src="res/icon/ios/icon-small@2x.png" platform="ios" width="58" height="58" />

                 

                 

                    <!-- Spotlight Icon -->

                    <icon src="res/icon/ios/icon-40.png" platform="ios" width="40" height="40" />

                    <icon src="res/icon/ios/icon-40@2x.png" platform="ios" width="80" height="80" />

                 

                 

                    <!-- iPhone / iPod Touch -->

                    <icon src="res/icon/ios/icon.png" platform="ios" width="57" height="57" />

                    <icon src="res/icon/ios/icon@2x.png" platform="ios" width="114" height="114" />

                 

                 

                    <!-- iPad -->

                    <icon src="res/icon/ios/icon-72.png" platform="ios" width="72" height="72" />

                    <icon src="res/icon/ios/icon-72@2x.png" platform="ios" width="144" height="144" />

                 

                 

                    <!-- iPad Spotlight and Settings Icon -->

                    <icon src="res/icon/ios/icon-50.png" platform="ios" width="50" height="50" />

                    <icon src="res/icon/ios/icon-50@2x.png" platform="ios" width="100" height="100" />

                 

                 

                    <icon src="res/icon/ios/icon-120.png" platform="ios" width="120" height="120"/>

                    <icon src="res/icon/ios/icon-120@2x.png" platform="ios" width="240" height="240" />

                 

                 

                    <icon src="res/icon/ios/icon-152.png" platform="ios" width="152" height="152"/>

                    <icon src="res/icon/ios/icon-152@2x.png" platform="ios" width="304" height="304" />

                 

                 

                    <splash src="res/screen/ios/Default-568h@2x~iphone.png" platform="ios" width="640" height="1136"/>

                    <splash src="res/screen/ios/Default-667h.png" platform="ios" width="750" height="1334"/>

                    <splash src="res/screen/ios/Default-736h.png" platform="ios" width="1242" height="2208"/>

                    <splash src="res/screen/ios/Default-Landscape-736h.png" platform="ios" width="2208" height="1242"/>

                    <splash src="res/screen/ios/Default-Landscape@2x~ipad.png" platform="ios" width="2048" height="1536"/>

                    <splash src="res/screen/ios/Default-Landscape~ipad.png" platform="ios" width="1024" height="768"/>

                    <splash src="res/screen/ios/Default-Portrait@2x~ipad.png" platform="ios" width="1536" height="2048"/>

                    <splash src="res/screen/ios/Default-Portrait~ipad.png" platform="ios" width="768" height="1024"/>

                    <splash src="res/screen/ios/Default@2x~iphone.png" platform="ios" width="640" height="960"/>

                    <splash src="res/screen/ios/Default~iphone.png" platform="ios" width="320" height="480"/>

                  </platform>

                • 5. Re: ERROR ITMS-90096: "Your binary is not optimized for iPhone 5 - "
                  kerrishotts Adobe Community Professional

                  See Customize app icons - Apache Cordova   for a sample configuration. Try with that first. My suggestion is to use the same names and paths as used in the documentation.

                   

                  Make absolutely sure that the icons that your config.xml file references are the same size as you indicate with the width and height attribute. Side note: there's no such thing as a 240px or a 304px icon for iOS, so I don't know why you're using it -- see https://makeappicon.com/ios9icon for the sizes you'd need.

                   

                  It also looks like you've mixed a lot of icon tags together -- some using gap:platform, some others using platform (while also being in an iOS platform block). I would highly suggest simplifying your config.xml so that it resembles the documentation on the Cordova site.