Xcode 4.4 removed Icon Composer in Developer Tools
Asked Answered
A

10

37

So I just upgraded to the latest and greatest Xcode 4.4 but can't find Icon Composer. It was in the Open Developer Tool menu item in Xcode 4.3 but now I can't find it anywhere.

Did Apple forget to include it? How do I create icons without it?

I also tried using iconutil in Terminal but I'm getting an error that 1024x1024 is not supported. I am running OSX 10.7.4.

Acaulescent answered 26/7, 2012 at 0:33 Comment(1)
As of 2015 all you have to do is drag png images of the correct sizes into Images.xcassets in XCode. It's that easy. All of these answers are way too much work.Synchro
A
60

My guess is that Apple doesn't want you using it anymore.

EDIT: The better way to do it is to add the .iconset folder to the target in Xcode. Scroll down to Dvorak's answer, which is admittedly the better one.


The officially sanctioned way is now the iconutil command instead.

From Apple's guidelines:

After you’ve created the necessary app icon assets, place them in folder a named icon.iconset. To create an .icns file, use iconutil in Terminal. Terminal is located in /Applications/Utilities/Terminal. Enter the command iconutil -c icns <iconset filename>, where <iconset filename> is the path to the .iconset folder. You must use iconutil, not Icon Composer, to create high-resolution .icns files.

There's another relevant Apple doc that goes more in depth: High Resolution Resources.

For reference, the complete set of icons:

icon_16x16.png
[email protected]
icon_32x32.png
[email protected]
icon_128x128.png
[email protected]
icon_256x256.png
[email protected]
icon_512x512.png
[email protected]

Note the last one is the equivalent of 1024x1024, though it seems like iconutil wants it named 512x512@2x, at least in Lion. Make sure - this is key - that you have this exact set of files, or you will encounter errors. Notice the lack of an icon_64x64.png, for instance.

Attach answered 26/7, 2012 at 2:16 Comment(7)
I'm using OSX 10.7.4 and iconutil will not support 1024x1024 images. I need the larger size for app store submission.Acaulescent
@Gavin It should be named "[email protected]" or something like that, for it to work (1024x1024 as a label has been removed in recent builds I think). If that doesn't worked then I'm stumped, because I literally used iconutil on Lion for a submission a week ago.Attach
Wow. This is a pita now. It's not working for me either. I get 'laptop:~ crewshin$ iconutil -c icns ~/Desktop/icons.iconset/ ImageIO: <ERROR> _CGImageDestinationCreateWithWriter capacity parameter (12) is too large for this file format (max is 10)' @AttachVigesimal
Replying to myself. Had to remove a 64x64 version for it to work.Vigesimal
@Vigesimal Glad you solved your problem. There's probably also 3rd party apps that make it all easier.Attach
The easiest way to just add the .iconset folder to the project and to the target, like a couple of the other answers say. You don't need to run iconutil yourself.Interphone
I want to point out that, based on what people said about a 1024x1024 version, it's probable that the 32x32@2 version can be thought of as the 64x64 version.Corporate
S
26

Let Xcode Create an icns File Automatically

Ideally, you would supply a complete set of icons. However, it is not a requirement to have a complete set; the system will choose the best representation for sizes and resolutions that you don’t supply. Each icon in the set is a hint to the system as to the best representation to use.

*

The set needs to be put into a folder with the .iconset extension. It might seem a little unusual for a folder to have an extension, but this extension is a signal to the system that the folder contains a set of icons.

*

Xcode automatically validates and converts an iconset folder to an icns file. All you need to do is add the iconset folder to your project and build the project. The generated icns file is added automatically to the built product.

*

Note: Don’t use Icon Composer—it can’t create high-resolution icns files.

Provide High-Resolution Versions of All App Graphics Resources

About High Resolution for OS X

Sherrilsherrill answered 9/8, 2012 at 5:2 Comment(2)
MISSING one important step.In the info.plist file set the "CFBundleIconFile" value to [IconName] but without the .iconset extensionZweig
@JohnBallinger: That part hasn't changed; you've always had to do that (if that's how you plan on using the icon) no matter how you create the .icns file.Interphone
W
6

By the way, it took my one hour to figure out why both iconsutil and XCode failed to generate the icons: I did include a 64x64 version, which is wrong! No 64x64 version is required.

Wag answered 29/7, 2012 at 9:29 Comment(3)
Yeah I had that problem too. Turns out the icon_32x32@2x is 64x64.Acaulescent
Turns out that this is a pretty dumb workflow. 50% of the files are dups. We REALLY need icon composer that supports 1024px res. Nice drag and drop ui. Simple. Fast.Vigesimal
They're no duplicates. 32x32@2x means 32 * 2 x 32 * 2, which is 64 x 64, and 512 * 2 is 1024. It is simply a naming convention to indicate these are not standard sizes, but rather for use on Retina displays.Histolysis
A
6

I created an Automator Workflow that takes a 1024 px PNG image as input and creates all the other formats inside an .iconset folder for you automatically. From a designers point of view not the best option, but perfect during development, because Xcode stops complaining about missing 16x16px formats:

https://github.com/audiocommander/Iconset-Generator

Accession answered 11/8, 2012 at 16:17 Comment(0)
K
4

Download Graphics Tools for Xcode 4.4.

Karikaria answered 26/7, 2012 at 0:56 Comment(2)
Icon Composer is included in the Graphics Tool download for Xcode 4.4, but it does not include the 1024 px option which is now required for app submissions.Largehearted
Icon Composer is a great tool for generating icns and ico file for my Java applications that are packaged for OS X and Windows. Thanks for pointing out where Icon Composer can be found now!Skillet
M
3

You can get the old one back!

  1. go to the dev page of apple and click below Xcode on "Looking for an older version of Xcode?"
  2. download xCode 4.2.
  3. when done open the .dmg file.
  4. go to finder and click "Go to folder".
  5. type "/Volumes/Xcode/Packages".
  6. right click "DeveloperTools.pkg".
  7. click open with "The Unarchiver" (if you don't have it its free in the App Store".
  8. extract it to your Desktop and open the folder.
  9. right click the payload file and open it with "Archive Utility".
  10. open the payload folder and go to Applications > Utilities.
  11. copy it to you application folder or somewhere else.

enjoy Icon Composer!

Missus answered 15/12, 2012 at 18:56 Comment(0)
T
2

Just thought i'd concur that Icon Composer 2.4 in Graphics Tools for Xcode 4.4. in xcode44graphicstools6938118a.dmg does not have support for 1024 sizes, the old 2.2 version does however.enter image description here

Truett answered 16/8, 2012 at 12:32 Comment(0)
S
2

As of 2015 all of the other answers are way too much work or just plain wrong. It's as easy as this:

enter image description here

You don't have to do anything other than to create the image need in the following sizes:

16 x 16px
32 x 32px
64 x 64px
128 x 128px
256 x 256px
512 x 512px
1024 x 1024px

And then in Xcode in your project view click on Images.xcassets and from finder drag the images into the AppIcon squares.

You don't have to painstakingly name files or create directories or move a directory into Xcode or any of it. Just drag the images in from finder.

Here is a video someone else made of where to drag the icons to in XCode:

http://www.youtube.com/watch?v=OQN_AwcF0GU&t=4m0s

Synchro answered 23/1, 2015 at 1:3 Comment(1)
Remove the 64x64 and 64x64@2x version - this size isn't required, see developer.apple.com/library/mac/documentation/GraphicsAnimation/…. When using iconutil you'd also get an error: iconutil[868] <Error>: ImageIO: _CGImageDestinationCreateWithWriter capacity parameter (12) is too large for this file format (max is 10)".Xanthine
N
1

Iconsutil is the best way and the only one accepted by XCode 4.4 Take care to name your png files exactly as Vervious mentioned and to provide all the files, otherwise, doesn't work...

Nicotinism answered 8/8, 2012 at 13:20 Comment(0)
C
1

Read this...

http://developer.apple.com/library/mac/#documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/Introduction/Introduction.html#//apple_ref/doc/uid/TP40012302-CH1-SW1

... to get the naming convention for your png images.

1024x1024 is no longer supported. Instead use the 512x512@2x naming convention as per the instructions on the page of the link above.

You don't need to convert to an icns file anymore as xcode does this for you automatically, so you don't even need to use iconutil.

Here's how it works:

1) Just create a folder in your project with the extension .iconset 2) Put all your png's in it but make sure that they all are named appropriately as per the instructions given by following the link above. 3) Compile the project as usual.

Xcode does the rest.

Chapin answered 4/4, 2013 at 8:56 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.