Extract iOS App Resources Deftly with Crunch

On a fine summer day this year, I stood in front of my MacBook Air — yes, sitting had become tiresome — thinking of a way to make my process of reviewing apps better. Sure, there are lots of ways my workflow could be improved, but I had one element in particular that kept me from being a pedant: the unobtainable icons for iOS apps. I could review whatever I wanted, but how was I to get a quality 200 x 200 pixel image? I thought about it a bit and to no avail, then pushed on to another task that needed attention.

A few weeks following the transpiration of said events, I happened upon Retina Mac Apps, my new favorite place to discover quality Mac apps. Among the collection of beautiful icons was Pragmatic Code’s Crunch, an app that stood out by having an icon closely resembling the well-known home button found on iOS devices. I wondered, why would a Mac app have such an icon? After a bit of reading, I realized that this was the very app I had been searching for weeks before. So I downloaded it and have been using it regularly. If the idea of this app sounds like something you see yourself using, keep reading for a assiduous appraisal of the app and its worth.

The Crowd Crunch is Intended For

I decided to maximize the size of things a bit, but don't worry because Crunch is Retina-optimized.

I decided to maximize the size of things a bit, but don’t worry because Crunch is Retina-optimized.

If you made it this far then you likely have an interest in the core functionality of this app; alternatively, you’re wondering who such a utility is meant to serve. Whatever the case, Crunch does have a focus and it’s not only for developers or app reviewers. You see, unlike Mac apps, there’s no way to perform a “Show Package Contents” operation on Apple’s mobile format, .IPA files, without getting into developer territory. Even if you’re just looking to get the icon, the process is more complex than it should be.

The question is not actually who this app is for, but rather what you’re planning to use it for. Developers, designers, app reviewers, journalists, users who have a penchant for icons, and so on will find this app useful. Crunch gives you the ability to steal the source files of an app, which isn’t its intended purpose. In fact, the developer warns you not to do so and I advise against it. I’m surprised Apple doesn’t encrypt the app files so utilities like this can’t make their way into the covert depths of developers’ fancywork.

Extracting Icons

You can actually export icons and resources for more apps than one.

You can actually export icons and resources for more apps than one.

Crunch has the ability to extract all the files in an iOS app or just the icon. I don’t have any use for a full extraction, so I typically just use the app to extract the icon. (Don’t worry, I’ll discuss its other abilities as well — check below.) The operation is extremely straightforward: double-click the app you want to export, click the Icon tab, click Next, and conclude with finding a destination and clicking Save.

An alternate way to extracting icons and contents is to click the download icon in the bottom right corner and drag a .app or .ipa file to that screen.

If you’re in the mood to go big, you can actually select multiple apps using the Shift or Command key and then double-click one of them to export them all. From there, things are the same as before, but you can’t set different sizes for each icon, which can be unfortunate if you were planning an advanced batch operation.

There are a few options along the way to give the icon a better look than the default square box. A Decorated export will look just like the icon does on the device (it adds a slight shadow to all edges and an even heavier one if you check the corresponding box), while the Rounded option keeps things flat and simple on the edges. Lastly, there’s the bland, square-edged format (Original) that is pretty much the original icon before the original icon, just not a PSD. I use the Decorated option since I want the icon to look as good as possible.

I'm exporting an icon, but I raised the size above the source.

I’m exporting an icon, but I raised the size above the source.

One thing that you should know before exporting an icon is that even though the maximum dimensions are 1024 x 1024, most apps, even Retina-optimized iPad ones, do not exceed 512 x 512 pixels. If you drag the size slider to anything beyond 512 x 512, the quality declines and things can get ugly. I don’t understand why the slider even goes farther than 512 x 512 since not one app I have is that large.

Extracting Resources

Looking for all the files? This is the right tab.

Looking for all the files? This is the right tab.

So long as you’re not plotting to go rogue and purloin the goods of designer and developer alike, Crunch can help you look into the very structure of your favorite iOS app. I think this kind of functionality is actually useful for people who want to know exactly what a user interface element looks like so they can be inspired by it — not that real designers actually do that.

To grab all the resources from an app, you’ll need to download Xcode: it includes PNG Crush, a tool that converts iOS PNG images to ones that are readable by OS X. And contrary to popular belief, Apple’s development software is free on the Mac App Store, but it is a hefty 1.46 GB download that takes up quite a bit of disk space once installed. If you don’t have it, you’ll not get all the images, just some of them. Got that all sorted out? Okay, let’s begin.

Get exactly what you want here.

Get exactly what you want here.

Start by double-clicking an app and selecting the Resources tab. Now, if you want all the files from that app, make sure All is selected under the “Files” drop-down menu. Alternatively, you can export only the icons (not just one like the dedicated Icon function — all sizes the app has in its contents), images, or media files (sound effects, videos, etc.). A useful checkbox is “Only export the high definition” because it’ll make sure you don’t get tiny, fuzzy images on that Retina MacBook Pro of yours. The “Rounded corners” option will become available if you’re exporting only icons. Once you’re done customizing things, click Next and select a destination for the files to finish up.

Large apps (200 MB+) take a while to export, so go to Preferences and check the “Play: System Alert” button to give yourself a reminder.

You probably have Xcode if you're a developer, but if not, I'd suggest getting it for this function.

You probably have Xcode if you’re a developer, but if not, I’d suggest getting it for this function.

In my experience, Crunch exported things in a fast manner, but I didn’t have the PNG Crush tool installed so it didn’t convert any of the images and they were left completely blank. It’s really too bad the only way to convert iOS PNG files is by downloading Xcode because if you own a MacBook Air like me, you’re sparing in using up that precious SSD space. I spoke with the developer of Crunch and he told me that this tool is the property of Apple, so he’s not authorized to distribute it with the app; if he were, things would surely be much simpler. Unfortunately, if you want to use Crunch to its full potential, this is the only way. Most developers have Apple’s software though, so it shouldn’t be too much of a problem for most users.

It’s Simple and Works Well

Scroll past the end of the app list to get an easter egg.

Scroll past the end of the app list to get an easter egg.

I can’t really look at everything Crunch has to offer, but I gave you a good description of every major feature with a few minute ones included. For the other stuff, I suggest you refer to the app’s Web site and read all the information the developer has to offer on there. I’ve found this app to be extremely useful for my job and I hope you find a great use for it. Pragmatic Code is charging $9, which may seem like a large fee, but there’s a 30-day trial and the app is worth the money if you are going to use it. One thing I’d love to see in this app is the ability to export icons of OS X apps, just for a quick way to do so without finding the .icns file. That’s it though — Crunch is perfect otherwise.


Summary

Extracting the contents of an iOS app can be confusing, but this app makes it effortless. The only downside is that you'll need Xcode to extract images correctly, icons not included.

10
  • Nacho

    It’s incredible how much you like on Mac.appstorm to recommend payed apps that perform trivial tasks that can be done right with the tools the Operating System has or with free (and frequently more powerful) apps.

    Extracting ANY file from an iOS app (not just images) is a very simple task that requires no third party apps, nor XCode. You just have to:

    1. Look for the app you are going to extract files from in “YourHomeFolder/Music/iTunes/iTunes Media/Mobile Applications” (note: if you have more than one iTunes library you might need to change the part of the path before “iTunes Media” to the path to the library where your iOS apps are)

    2. COPY the iOS app to another location (e.g. the Desktop) and work on it. Always make a copy, never move the original.

    3. Change the file extension from “.ipa” to “.zip” (Mac OS X will warn you about this, no reason to be afraid if you are working on a copy of the original file).

    4. Unzip the file and… voilà! you just have a folder containing everything inside that iOS app.
    Inside that folder you’ll find a file named iTunesArtwork, with no file extension, you can add the extension “.png” and you just have the original app icon. To explore other files inside the app you just need to open the Payload folder, where you’ll find the app again, but this time you can right-click and choose “show package contents” and explore every single file inside the app.

    It’s very easy, it needs no third party apps (just Compression Utility and Finder, both included in Mac OS X) and it’s FREE.

    • http://www.thepapermail.com Jacob Penderworth

      I know it can be done, but I’d rather use a utility that takes seconds than spend five minutes on the task. It’s called optimizing your workflow.

      • Mike

        The process described above takes less than 30 seconds from start to finish, and is more efficient if you are actually interested in seeing how the app works, not just stealing a useless image.

        • http://techinch.com/ Matthew Guay

          I sure wouldn’t call it stealing if you’re using the icon to talk about the app in a review…

          And FYI, if you’re writing a roundup of 50 apps, and need each of their icons, you might find that Crunch pays for itself in a couple sessions.

  • John Riggles

    I suppose if you’re really interested you *could* just write an Automator workflow to do this and whatever else, but that certainly doesn’t mean that this app is without its uses. To each their own…

theatre-aglow
theatre-aglow
theatre-aglow
theatre-aglow