Generic binaries contain all the heavy ipad graphics in the App Bundle on iPhone? What to do about it?

Since the iPad 3 has a mesh display, I'm starting to worry about the amount of "image spam" in generic binaries on iPhones and iPod touch devices. Obviously, they don't need these resources.

I've never tested, but maybe someone knows this: when the iPhone downloads a generic binary, does the App Store version automatically download that had all the heavy iPad graphics removed? Or is your iPhone or iPod touch flooded with content that only the iPad needs?

Are there any ways to make a generic binary "smart" so that the iPad only gets iPad resources and the iPhone only gets iPhone resources?

In my case, I have a 10MB universal app. Upgrading this for iPad retina would mean iPod touch users would have double the file size.


source to share

3 answers

No, nothing is removed from the app bundle when installed on different devices. Remember that this is all coded, so nothing can be destroyed or the signature will be invalid. The standard advice here is to just live with the fact that your client will actually use half of the resources in your app bundle (or a quarter if you're not using resources between the iphone and ipad). If this is a rogue for you, you might consider downloading the required resources from a server under your control on first launch, but remember that this makes things very difficult for you and is actually a very poor user experience. You almost certainly want to just live with the increased size.



What needs to be done is just skip the non-retina images because iOS will automatically scale the images from their @ ​​2x shape. While this may cause a slight lag, it is worth it because it will keep the IPA size down and the users happy. But if you're making a game where FPS is important, you just have to bite the bullet and put all the graphics there for all devices.



There really wouldn't be a great way to do this without annoying the user. Having said that, you could send it with just the iPhone graphics (or nothing at all) and then on first launch it will download all the images from the server that are needed for whatever device it runs on. As I said, this is actually not the best way to do it. The best boot option seems to be the best in my opinion.



All Articles