
Не всегда обновления приложений несут в себе что-то новое и полезное, зачастую устраняются одни ошибки, но тут же появляются другие. Хуже, когда после обновления появляется реклама или пропадают полезные функции, а таких случаев очень много.
В данном материале мы расскажем, как откатить версию приложения на iOS с помощью программ Charles и iTunes. Но прежде чем приступить, обратите внимание:
- инструкция работает только на версии Charles 4, проверялась на Charles 4.0.2 (программа платная, но имеет неограниченный пробный период, пробная версия прекращает свою работу через каждые полчаса);
- максимальная версия iTunes для macOS - 12.3.3, для Windows - 12.2.2, на следующих версиях данный способ уже не работает: либо программа iTunes не запускается, либо нет кнопки Загрузить (12.4-12.4.3), либо появляется ошибка
«iTunes не может проверить подлинность сервера. Недействительный сертификат сервера» (12.5-12.6.5).
Внимание! Начиная с версии iTunes 12.7 в программе больше нет магазина приложений App Store, поэтому для установки скачанного приложения на устройство используйте последнюю рабочую версию — iTunes 12.6.5
Как откатить версию приложения на iPhone и iPad
Как описывалось выше, инструкция будет работать только на Tunes 12.3.3 (macOS) и 12.2.2 (Windows). Для использования версий 12.6.3-12.6.5 нужно установить сертификат Charles. Если у вас установленна последняя версия iTunes, ее нужно удалить (в macOS High Sierra и Mojave предварительно требуется отключить SIP). Загрузить любую версию iTunes для macOS и Windows можно с этого или этого сайта.
- Скачайте программу Charles 4 для своей операционной системы (macOS или Windows) и установите ее. Если на более новой версии метод не работает, тогда скачайте Charles 4.0.2 отсюда
- Запустите программу Charles. На компьютерах с macOS при первом запуске программы нажмите кнопку Grand Priviliges
- Откройте iTunes и авторизуйтесь под своей учетной записью Apple ID, найдите приложение которое хотите откатить и нажмите кнопку Загрузить
- Перейдите к программе Charles и в панели Structure (слева) найдите строчку содержащую «buy.itunes.apple.com». Кликните на ней правой клавишей мыши и выберите пункт Enable SSL Proxying
- Вернитесь обратно к iTunes, остановите загрузку приложения и удалите его из списка загрузок (кликните на иконку загрузок в правом верхнем углу, выберите загружаемое приложение и 2 раза нажмите клавишу Delete ). Если загрузка уже завершилась, тогда перейдите в раздел «Мои программы» и удалите скаченное приложение
- Снова воспользуйтесь поиском в iTunes и повторно загрузите приложение. Если iTunes выдаст предупреждение, что не может проверить подлинность сервера, нажмите Продолжить . Начнется загрузка приложения, остановите ее и удалите
- Перейдите к Charles и найдите новую строчку содержащую «buy.itunes.apple.com». Раскройте ее и выберите «buyProduct»
- В правой панели программы выберите вкладку Contents (вместо Contents, в некоторых ОС может быть Response) и укажите тип отображения «XML Text». Среди строчек кода найдите: <key>softwareVersionExternalIdentifier</key>
- Вернитесь в левую панель Structure и на строчке «buyProduct» кликните правой клавишей мыши, выберите пункт Breakpoints
- В iTunes заново найдите и загрузите приложение
- Как только Вы нажмете Загрузить , в программе Charles появиться новое окно. Перейдите к нему, выберите вкладки Edit Request и XML Text
- Найдите строчку <string>XXXX</string> и вместо XXXX (набор цифр) вставьте номер версии приложения, который Вы скопировали ранее и нажмите кнопку Execute один раз, а затем еще раз
- В iTunes должна начаться загрузка выбранной версии. По окончанию загрузки в разделе «Мои программы» появится скачанное приложение. Посмотрите версию программы, вызовите контекстное меню правым кликом мыши и выберите Сведения или нажмите Cmd+I (macOS) / Ctrl+I (Windows). Если вас не устраивает версия, скопируйте другой идентификатор версии и повторите Шаги 10 - 13
- Подключите свой iPhone или iPad к компьютеру и установите приложение на устройство





Если у вас появляется предупреждение, что сертификат сервера недействительный и нет кнопки Продолжить , нужно добавить сертификат Charles на свой компьютер

<integer>821085078</integer>
В строчке <integer> указывается текущая версия приложения, а под ней уже идут идентификаторы всех предыдущих версий:
<key>softwareVersionExternalIdentifies</key><integer>785833618</integer>
<integer>811158353</integer>
<integer>811420549</integer>
<integer>811474632</integer>
Выберите версию, которую Вы хотите установить и скопируйте ее номер





После выполнения всех операций не забудьте в Charles вернуть все по умолчанию, снова перейдите в программу, выберите строчку «buyProduct», кликните по ней правой клавишей мыши и нажмите Disable SSL Proxying, а также снимите галочку с Breakpoints или просто удалите программу.
Как установить сертификат Charles на компьютере
В программе Charles откройте Help→SSL Proxying и нажмите Install Charles Root Certificate. Откроется окно для добавления сертификата, нажмите Добавить для macOS и Установить сертификат для Windows
- в macOS
- в Windows
Откройте программу «Связка ключей» и в связке Вход отыщите только-что добавленный сертификат Charles. Кликните по нем два раза левой кнопкой мыши, чтобы открыть. Отобразите скрытые параметры поля «Доверие», для этого кликните по иконке треугольника рядом со словом и в выпадающем списке пункта «Параметры использования сертификата» выберите Всегда доверять, закройте окно и введите свой пароль пользователя
Появится новое окно «Мастер импорта сертификата», выберите расположение Текущий пользователь и нажмите Далее . Потом Поместить все сертификаты в следующее хранилище, кликните по кнопке Обзор и выберите Доверенные корневые центры сертификации. Для завершения нажмите кнопки Далее и Готово
Инструкция непростая и требует усилий, но это того стоит, если Вы хотите вернуть старую версию приложения.
Расскажите об этом лайфхаке своим друзьями, поделитесь с ними ссылкой в соц.сетях и подписывайтесь на наши паблики в Facebook, Twitter или Вконтакте