Разработчики зачастую ставят ограничения на свои приложения, запрещая их запуск на устройствах прошлых поколений и/или со старой версией iOS. Для этого есть несколько причин:
Приложение было скомпилировано (собрано) для более нового процессора
Техническая причина. Если это так, то приложение было создано эксклюзивно для новых iPhone, iPad и заниматься его редактированием нет причин, так как оно всё равно на старых девайсах будет "падать".Вот лист процессоров, расположенных по моделям устройств:
- iPhone 2G: ARM11
- iPod touch: ARM11
- iPhone 3G: ARM11
- iPod touch 2g: ARMV6
- iPhone 3GS: ARMV7
- iPod touch 3g: ARMV7
- iPhone 4: Apple A4
- iPod touch 4: Apple A4
- iPad: Apple A4
- iPhone 4S: Apple A5
- iPad 2: Apple A5
- iPad 3: Apple A5X
Однако иногда разработчики просто пытаются подтолкнуть пользователя к покупке нового iDevice'a или обновлению iOS для временного избавления от пиратства, например, как однажды это было сделано с iPhoto и iWork.
Тогда отредактированным, это приложение спокойно запустится на вашем iPhone или iPad, без необходимости его обновления.
В каждом приложении указаны его системные требования. Ваши требования - возможности указаны в:
"/System/Library/CoreServices/SystemVersion.plist" "/System/Library/CoreServices/SpringBoard.app/***AP.plist"
Эти листы нельзя редактировать, если на вашем устройстве не был сделан Jailbreak, но мы можем отредактировать требования приложения.
Как поменять требования приложения для iPhone, iPad
Что нам для этого надо:Архиватор 7-zip, редактор файлов типа *plist, такого как Plist Editor For Windows, файловый менеджер iFunBox, ну и IPA файл самого приложения.
Процедура редактирования:
1. Копируем куда-нибудь свой IPA файл;
2. Открываем его при помощи 7-zip;
3. Находим, извлекаем и открываем "iTunesMetadata.plist". На первый раз советуем извлечь его и редактировать отдельно при помощи Plist Editor For Windows;
4. В нём вы найдёте строки "UIRequiredDeviceCapabilities", или "MinimumOSVersion". Вам просто нужно убрать требуемые DeviceCapabilities и поставить минимальным системным требованием iOS версии 1.0 Если нет строки "UIRequiredCapabilities" то не о чем беспокоиться, то же самое с "MinimumOSVersion";
Как поменять требования:
Находим:
Code
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>armv7</string>
<string>video-camera</string>
<string>opengles-2</string>
</array>
<array>
<string>armv7</string>
<string>video-camera</string>
<string>opengles-2</string>
</array>
Пустая строка выглядит вот так:
Code
<key>UIRequiredDeviceCapabilities</key>
<array>
</array>
<array>
</array>
Как поменять требования операционной системы:
Находим:
Code
<key>MinimumOSVersion</key>
<string>4.3</string>
<string>4.3</string>
Меняем:
Code
<key>MinimumOSVersion</key>
<string>1.0</string>
<string>1.0</string>
5. Заменяем изменённым оригинальный plist;
6. Находим Info.plist в файле приложения и делаем то же, что мы делали с "iTunesMetadata.plist"
7. Сохраняем;
8. Устанавливаем при помощи iFunbox.
Если установка не получается, смотрите сообщение об ошибке. Если это "0xe8003ffe"или "-402636802", то приложение росто было создано для другого процессора. Даже если вы мануально проинсталлируете приложение оно не запустится.
Пробуйте, так как шанс запустить приложение возрастают в разы, по крайней мере на iOS 5.0 iPad 2 я iPhoto запустил.) Отписывайтесь.