Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am working on an iPad app. It needs to contain some very large files. I could put them into the app, but they would push it well over 20MB, which means that it would not be downloadable over the air -- only via iTunes.

Is there a way around this without too much pain for me? I don't have a server or anything like that.

share|improve this question
I've downloaded Rage HD (782 MB) over wifi, no iTunes involved. – ZippyV Oct 30 '11 at 18:43
@ZippyV "Over the air" most likely means 3G, not Wifi. – user1249 Oct 30 '11 at 21:13
up vote 8 down vote accepted

You have two choices, you either embed the resources in the application and it grows large, or you don't embed them and have to serve them at runtime.

Serving them at runtime means your user will have to sit and wait a second time (after installation) to use the app, you'll need to deal with partial downloads as they inevitably close your app since it doesn't work right away, and you'll need a place to host the data.

Embedding them means it can't be downloaded over 3G, so users will need to be near Wi-Fi to download it.

Embedding them is the way to go. 20MB is nothing over Wi-Fi, and if someone can't be bothered to wait and hop on Wi-Fi to download your app, they probably weren't too enthused about it in the first place.

This isn't even considering the fact that you say it's an iPad app, the majority of which do not have 3G connections anyway.

share|improve this answer

I'm for embedding, as long as your app provides sufficient value to justify the download. If so, people will be fine waiting for it. If not... why are you making it?

share|improve this answer

definitively the BETTER solution is to download the first time


1) Binary .IPA is smaller, so You can upload quickly first time AND in case of updates

2) if user download upgrades, data are already present

3) You can fix data without posting an update

4) Data updates are a nice feature You customers will like, NOT users, the customer who pay you to develop an app.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.