Да, вы можете понизить версию устройства.Это официально не поддерживается, но я сделал это на двух 3G с успехом для тестирования на 3.1.3.
Сначала найдите инструмент RecBoot от кого-то по имени the0rkus, который работает только на Intel macs.Это выводит телефон из режима восстановления после загрузки программного обеспечения 3.1.3.
Найдите файл .ipsw для вашего устройства, поскольку вы знаете, что это другой файл для iPhone 3 / 3GS или iPod Touch.Загрузите это программное обеспечение в телефон через iTunes обычным способом, удерживая нажатой клавишу выбора, нажимая кнопку «восстановить».Подождите, пока он загрузится.
Когда он завершит работу и перезагрузится, iTunes обнаружит, что эта версия неверна.Ситуация такова, что программное обеспечение загружено, готово к работе, но ему не хватает окончательного благословения от Apple.RecBoot выводит его из этого режима, «пробуждая» телефон в нормальном состоянии готовности к активации.После того, как вы подключились к iTunes с вставленной SIM-картой, у вас есть телефон, как будто вы никогда не переходили на 4.0.
Жаль, что нам приходится прибегать к взлому, чтобы протестировать со старыми устройствами, но я неНе знаю другого пути.Было бы неплохо, если бы симулятор по-прежнему мог запускать 3.1.3, хорошо, если установка цели развертывания помечала бы функции до 3.2.
Вы также можете установить более старый Xcode 3.2.1 с iPhone SDK 3.1.3, ноаппаратное обеспечение - это настоящая проверка того, действительно ли ваше программное обеспечение работает.Учитывая это, вы, вероятно, можете пропустить его поиск и использование - хотя в 3.1.3 нет более быстрого способа найти все, что вы не можете использовать.Нет проблем, если установлено несколько копий Xcode разных версий, но рекомендуется удалить их с помощью сценария, предоставленного в /Developer/Library/uninstall-devtools
(см. Файл readme, включенный в каждый дистрибутив Xcode)