AlexDisler / cordova-icon

Automatic icon resizing for Cordova
MIT License
689 stars 292 forks source link

Apple is rejecting binaries for missing required icons with Xcode 8 / iOS 10. #84

Closed Rjak closed 6 years ago

Rjak commented 8 years ago

I am working on a change to cordova-icon to support the missing icons that my binary is now being rejected for with Xcode 8 / iOS 10. cordova-icon has brilliantly worked for us all the way up to a month ago with our last Xcode 7 / iOS 9 release, so I think the problem is that Apple has changed some requirements.

From the rejection email:

Missing required icon file - The bundle does not contain an app icon for iPhone / iPod Touch of exactly '57x57' pixels, in .png format for iOS versions < 7.0.

Missing required icon file - The bundle does not contain an app icon for iPad of exactly '72x72' pixels, in .png format for iOS versions < 7.0.

I am working on a local change to fix this, which I can submit a pull request for. I attempted to address the first rejection by adding the following lines to the ios section of index.js:

{ name : 'icon-57.png',       size : 57  },
{ name : 'icon-57@2x.png',    size : 114 },

When I submit this, Apple stops complaining about the 72x72 icon, and continued to complain about the 57x57 icon!!

Let me restate that just to be clear. Adding a specification for the 57x57 icon eliminates the complaint about the 72x72 icon, but not the 57x57 icon.

I am continuing to analyze and hopefully work out a fix, but any help addressing this would be greatly appreciated.

Rjak commented 8 years ago

In order to work around this for now, I hand-generated all the icons Apple requires for iOS 10 apps and added one reference for each of those images to our config.xml file:

<?xml version='1.0' encoding='utf-8'?>
<widget ...

...

<platform name="ios">
    <icon height="57" src="res/icons/icon-57.png" width="57" />
    <icon height="114" src="res/icons/icon-114.png" width="114" />
    <icon height="72" src="res/icons/icon-72.png" width="72" />
    <icon height="144" src="res/icons/icon-144.png" width="144" />
    <icon height="76" src="res/icons/icon-76.png" width="76" />
    <icon height="152" src="res/icons/icon-152.png" width="152" />
    <icon height="40" src="res/icons/icon-40.png" width="40" />
    <icon height="80" src="res/icons/icon-80.png" width="80" />
    <icon height="50" src="res/icons/icon-50.png" width="50" />
    <icon height="100" src="res/icons/icon-100.png" width="100" />
    <icon height="120" src="res/icons/icon-120.png" width="120" />
    <icon height="180" src="res/icons/icon-180.png" width="180" />
    <icon height="29" src="res/icons/icon-29.png" width="29" />
    <icon height="58" src="res/icons/icon-58.png" width="58" />
    <icon height="87" src="res/icons/icon-87.png" width="87" />
    <icon height="167" src="res/icons/icon-167.png" width="167" />
</platform>

...
krisrandall commented 7 years ago

Is there an ETA on the cordova-icon update? I have loved using it for some years now and have just hit this Xcode 8 issue. I need to release an app in the next couple of weeks - are you still working on this, or should I jump in and do it?

Rjak commented 7 years ago

I ended up generating all the icons I needed by hand and adding them to the icon list by hand, and I've been slammed ever since. If you could jump in and do it that would be great because it'll be awhile before I would have a chance.

krisrandall commented 7 years ago

This has magically stopped being an issue for me. I'm going to accept that for now.

BrunoCartier commented 7 years ago

Is the problem still relevant, or is it magically solved for everyone?