I have a problem with the gloss effect in app icon at iOS 5 beta 5, in iOS 4 it\'s show the effect not gloss, but iOS5 shows the gloss effect. I put the option Icon al
iOS 5 has anew "Icon Files (iOS 5)" key in the Info.plist file. Make sure the "Icon already includes gloss effect" boolean in that dict is set to "YES" too. You may need to clear your build folder before the changes take effect in the simulator. It takes a lot of troubleshooting to get it to work on older projects, so you might try erasing the root level key.
I had the same problem with an unwanted gloss effect using xCode 5.0. I went through all posted answers. Here is what worked for me:
1) Remove "Icon Already Includes Gloss Effects" from Info.plist. I did this because, although this is set to "YES", which should work properly -- for whatever reason, it wasn't working, so I wanted to remove it before adding the correct code.
Here's how to do it: Click your project name in the navigator (left column) > then in the Editor (middle column) click info. In the field that states "Icon Includes Gloss Effects", click the minus "-" button to delete. This removes the code that is not working, so you will start with a clean palette.
2) Open your Info.plist file -- In the Navigator (left column), find the info.plist file then (Right Click > Open As > Source Code).
3) Your code will look like this:
<key>CFBundleIcons</key>
<dict>
<key>CFBundlePrimaryIcon</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>Icon-120</string>
<string>Icon-72</string>
<string>Icon-57</string>
</array>
</dict>
Now copy the following 2 lines of code, because you will paste them into the code above:
<key>UIPrerenderedIcon</key>
<true/>
Your final code should look like this:
<dict>
<key>CFBundlePrimaryIcon</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>YourIconFile</string>
</array>
<key>UIPrerenderedIcon</key>
<true/>
</dict>
This is the best answer I can provide. Worked for me.
Just in case anyone stumbles across this due to a problem using an asset catalog in Xcode 5.0, there is a setting in the Attributes Inspector of the asset catalog that should be checked:
I set “Icon already includes gloss effects = YES” In the info.plist, search this part:
<key>CFBundleIcons</key>
<dict>
<key>CFBundlePrimaryIcon</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>myIcon.png</string>
</array>
</dict>
</dict>
Now, add this 2 lines:
<key>UIPrerenderedIcon</key>
<false/>
At the end, It must to be:
<key>CFBundleIcons</key>
<dict>
<key>CFBundlePrimaryIcon</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>myIcon.png</string>
</array>
<key>UIPrerenderedIcon</key>
<true/>
</dict>
</dict>
There are 2 keys in the Info.plist governing this.
xCode generated the following code for you, but it doesn't offer a GUI for changing this: Open your Info.plist file (Right Click > Open As > Source Code).
<key>CFBundleIcons</key>
<dict>
<key>CFBundlePrimaryIcon</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>myIcon.png</string>
</array>
<key>UIPrerenderedIcon</key>
<false/>
</dict>
</dict>
set the UIPrerenderedIcon = true
and you are good to go (this is NOT the other UIPrerenderedIcon
that also exists in this file as a boolean key!).
Yes, it's an iOS 5 bug. I'm sure it'll be fixed in the GM.