I am updating an app (whose original deployment target was 3.1.2) and I’m trying test it on a 2nd generation iPod Touch with iOS 4.2.1. The current release of Xcode (4.5) no longer connects to any device before iOS 4.3, so I can’t put the application over USB or even monitor the device log, so installation needs to be over the air using an ad hoc distribution.
I am able to wirelessly install the app on an iOS 6 iPod Touch, but when I try to install it on the 4.2.1 device, I see it download and I see the app label say “Installing…”, but in the end I get the pop-up message Unable to Download "[app name]".
Three important details:
- The ad hoc cert I’m using is good.
- I’ve confirmed with the iPhone Configuration Utility that the ad hoc distribution certificate is installed on the 4.2.1 device.
- I’m worried that I may have used an SDK method or property that only works in 4.3+, though I do not know if any binary validation happens during installation.
Does anyone know what might be happening?
Does anyone know how I can read the device console for a pre-4.3 device without installing an earlier version of XCode?
Answering (half of) my own question here:
The release notes on Xcode 4.5 plainly states:
This version of Xcode does not generate armv6 binaries.Since 2nd gen Touches are armv6, this means you cannot generate a universal binary that covers these earlier devices. If you want to support them, I think your only choice is to roll back your Xcode to 4.4. I’ll be more careful about reading the release notes next time.If anyone knows of any alternate ways to get the console log info off an “unsupported” device without downgrading your XCode, please add an answer and I’ll mark that as answering this question.