Как откатить обновление приложения на айфоне
Не всегда обновления приложений несут в себе что-то новое и полезное, зачастую устраняются одни ошибки, но тут же появляются другие. Хуже, когда после обновления появляется реклама или пропадают полезные функции, как это в своё время случилось с приложением Mi Fit от Xiaomi — когда разработчик убрал функцию "умный будильник".
В начале прошлого года на многих ресурсах появилась информация о том, как откатить версию приложения на iOS, но после очередного обновления программ Charles и iTunes скачать старую версию приложения по инструкции уже было невозможно. В данном материале мы расскажем, что изменилось и как это сделать с более новыми версиями программ.
Прежде чем приступить, обратите внимание:
- инструкция работает только на версии Charles 4, проверялась на Charles 4.2 (программа платная, но имеет неограниченный пробный период, пробная версия прекращает свою работу через каждые полчаса);
- максимальная версия iTunes 12.3.3, на следующих версиях данный способ уже не работает: либо нет кнопки Загрузить (12.4-12.4.3), либо появляется ошибка
«iTunes не может проверить подлинность сервера. Недействительный сертификат сервера» (12.5-12.6.2).
Шаг 1 Скачайте программу Charles 4 для своей операционной системы (macOS или Windows отсюда) и установите ее.
Шаг 2 Запустите программу Charles. На компьютерах с macOS при первом запуске программы нажмите кнопку Grand Priviliges
Шаг 3 Откройте iTunes и авторизуйтесь под своей учетной записью Apple ID, найдите приложение которое хотите откатить и нажмите кнопку Загрузить
Шаг 5 Вернитесь обратно к iTunes, остановите загрузку приложения и удалите его из списка загрузок (кликните на иконку загрузок в правом верхнем углу, выберите загружаемое приложение и 2 раза нажмите клавишу Delete ). Если загрузка уже завершилась, тогда перейдите в раздел «Мои программы» и удалите скаченное приложение
Шаг 6 Снова воспользуйтесь поиском в iTunes и повторно загрузите приложение. Если iTunes выдаст предупреждение, что не может проверить подлинность сервера, нажмите Продолжить . Начнется загрузка приложения, остановите ее и удалите
Шаг 8 В правой панели программы выберите вкладку Contents (вместо Contents, в некоторых ОС может быть Response) и укажите тип отображения «XML Text». Среди строчек кода найдите:
<key>softwareVersionExternalIdentifier</key>
<integer>821085078</integer>
В строчке <integer> указывается текущая версия приложения, а под ней уже идут идентификаторы всех предыдущих версий:
<key>softwareVersionExternalIdentifies</key>
<integer>785833618</integer>
<integer>811158353</integer>
<integer>811420549</integer>
<integer>811474632</integer>
Выберите версию, которую Вы хотите установить и скопируйте ее номер
Шаг 9 Вернитесь в левую панель Structure и на строчке «buyProduct» кликните правой клавишей мыши, выберите пункт Breakpoints
Шаг 10 В iTunes заново найдите и загрузите приложение
Шаг 11 Как только Вы нажмете Загрузить , в программе Charles появиться новое окно. Перейдите к нему, выберите вкладки Edit Request и «XML Text»
Шаг 12 Найдите строчку <string>XXXX</string> и вместо XXXX (набор цифр) вставьте номер версии приложения, который Вы скопировали ранее и нажмите кнопку Execute один раз, а затем еще раз
Шаг 13 В iTunes должна начаться загрузка выбранной версии. По окончанию загрузки в разделе «Мои программы» появится скачанное приложение. Посмотрите версию программы, вызовите контекстное меню правым кликом мыши и выберите Сведения или нажмите Cmd+I(macOS) / Ctrl+I (Windows). Если вас не устраивает версия, скопируйте другой идентификатор версии и повторите Шаги 10 - 13
Шаг 14 Подключите свой iPhone или iPad к компьютеру и установите приложение на устройство
Внимание! Начиная с версии iTunes 12.7 в программе больше нет магазина приложений App Store, поэтому на устройствах с iOS 10 и ниже для установки используйте последнюю рабочую версию — 12.6.2.
После выполнения всех операций не забудьте в Charles вернуть все по умолчанию, снова перейдите в программу, выберите строчку «buyProduct», кликните по ней правой клавишей мыши и нажмите Disable SSL Proxying, а также снимите галочку с Breakpoints или просто удалите программу.
Инструкция непростая и требует усилий, но это того стоит, если Вы хотите вернуть старую версию приложения.
Пока интернет бурлит новостями на тему обхода блокировок телеграма и сопутствующих с этим проблем у хостинговых компаний у меня была проблема посерьёзней — компания Innologica обновила до версии 6 приложение Inoreader для iOS.
Тихим будничным вечером приложение в телефоне было случайно обновлено до последней версии, т.к. обычно ничто не предвещало беды. Спустя пару дней во время поездки программа была запущена для чтения новостей и я не на шутку начал переживать.
Можно сравнить как было и как стало в двух примерах:
Конечно, на вкус и цвет и владельцы iPhone X были явно рады оптимизации под amoled-экраны, но именно этот апдейт побудил искать решения как откатить приложение назад, чего по умолчанию AppStore не позволяет делать.
Раньше достать ipa--файл приложения было делом 2 минут, достаточно было зайти на apptrackr и скачать, но он перестал работать и других подобных ресурсов дающих честно скачать ipa файл обнаружено не было (но вдруг вы такие знаете?).
Остались следующие способы получения старой версии приложения:
- У вас в iTunes лежит старый бэкап приложений с телефона и тогда можно просто скопировать приложение обратно (но у меня такого не было).
- Воспользоваться способом, описанным на скорую руку кем-то в интернете с помощью софта под названием Charles. Данный способ описан на ресурсах вроде 4dpa и пере-копирован множествами лиц без понимания что там вообще написано, однако, без дополнительных >100 грамм разобраться с этой писаниной сложно.
Все ваши мучения начнутся ещё до того, как вы скачаете Charles. Дело в том, что если вы обновляете iTunes на Mac, то у вас будет отсутствовать возможность устанавливать приложения, начиная с версии 12.7. Чтобы её вернуть, нужно установить обратно версию 12.6.4.
Что мы будем делать дальше?
Подробно: после запуска Charles нужно установить сертификаты приложения в Mac. Это делается через меню Help → SSL Proxying → Install Charles Root Cetrificate. Сертификат затем нужно в Keychain Access перевести в статус Always Trust. Если не установить, то будут ошибки и метод не сработает.
В iTunes ищем приложение Inoreader (это для любого приложения подойдёт, но меня интересовало в тот момент только оно), запускаем Charles и нажимаем в окне установки приложения Download:
В окне Charles у вас появляется подобная строчка со слово «buy» в адресе, связанная с сервером apple:
Для информации можно обратить внимание на то, что размер скачиваемого файла равен 20,4 мб:
После чего нужно включить SSL Proxying для осуществления перехвата и редактирования запросов:
Т.к., вероятней всего, у вас быстрый интернет и приложение уже успело загрузиться в библиотеку приложений, то необходимо его оттуда удалить.
Ещё раз проверяем, что SSL Proxying включен и переходим к повторной загрузке приложения из AppStore при этом нужно поставить загрузку на паузу, чтобы у вас было время на следующие действия. После нажатия на Download в окне Charles появится ещё одна строка в сервером apple, содержащая слово «buy». Развернув эту строку нужно найти buyProduct:
Справа в окне нажимаем на Contents и внизу выбираем XML Text. Листаем вниз пока не найдем softwareVersionExternalIdentifiers со списком не понятным цифр.
Эти цифры и выступают в роли версий приложений. Соответственно, чем меньше число, тем старее версия приложения. Как узнать какая версия приложения будет загружена? Например, я наугад брал с конца списка значение 823964615:
Теперь нам нужно проверить версию приложения. Для этого мы делаем встаем на «buyProduct» и в меню выбираем Compose и справа в окне представление Text.
В самом верху поля будет знакомый вам набор цифр после параметра <key>appExtVrsId</key>. Этот набор цифр — актуальная версия приложения.
Вместо этих цифр подставляем скопированные выше 823964615 и должно получиться вот так:
и делаем Execute. Программа выдаст вам окно и выбрав режим отображения XML Text мы сможем внизу найти параметр bundleShortVersionString и увидим, что выбранное нами значение соответствует версии 5.4.4, что в моём случае то что нужно, т.к. эти версия практически последней перед обновлением до 6.0
Остаётся один шаг. Нужно скачать всё это дело. Для этого нужно в нашем последнем отредактированном запросе buyProduct с полученной версией 5.4.4 в меню выбрать Breakpoints.
По новой перейти в AppStore для загрузки приложения Inoreader (если приложение успело загрузиться в библиотеку и вы не успели его остановить, то просто удалите, чтобы была возможность загрузить заново).
В итоге у вас начнётся загрузка приложения и можно будет увидеть, что размер приложения изменился в меньшую сторону:
В библиотеке приложений itunes появится значок программы с ярлыком Update. Это и будет означать, что вы сделали всё верно. Можно сделать Get Info приложения и будет написано:
Дальше у приложения смотрим где оно находится в файловой системе и сохраняем на будущее если вдруг решите обновить приложение :)
Надо сказать, что получилось проделать у меня данную процедуру с 2 раза.
Надеюсь, это будет кому-то так же полезно как оказалось мне.
Не всегда обновления приложений несут в себе что-то новое и полезное, зачастую устраняются одни ошибки, но тут же появляются другие. Хуже, когда после обновления появляется реклама или пропадают полезные функции, а таких случаев очень много.
В данном материале мы расскажем, как откатить версию приложения на 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).
Как откатить версию приложения на 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 на свой компьютер
В строчке <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
Появится новое окно «Мастер импорта сертификата», выберите расположение Текущий пользователь и нажмите Далее . Потом Поместить все сертификаты в следующее хранилище , кликните по кнопке Обзор и выберите Доверенные корневые центры сертификации . Для завершения нажмите кнопки Далее и Готово
Инструкция непростая и требует усилий, но это того стоит, если Вы хотите вернуть старую версию приложения.
Расскажите об этом лайфхаке своим друзьями, поделитесь с ними ссылкой в соц.сетях и подписывайтесь на наши паблики в Facebook, Twitter или Вконтакте
Подпишитесь на наш канал в Телеграме, чтобы узнать больше полезных советов
Остались следующие способы получения старой версии приложения:
- У вас в iTunes лежит старый бэкап приложений с телефона и тогда можно просто скопировать приложение обратно (но у меня такого не было).
- Воспользоваться способом, описанным на скорую руку кем-то в интернете с помощью софта под названием Charles. Данный способ описан на ресурсах вроде 4dpa и пере-копирован множествами лиц без понимания что там вообще написано, однако, без дополнительных >100 грамм разобраться с этой писаниной сложно.
Возможно, я это сделаю более полно, с картинками и в более простой понятной форме. В общем, чтобы скачать софт старой версии из AppStore потребуется минут 5 времени и в моём случае Mac OS X. Способ явно будет работать и на Windows, т.к. приложение Charles есть и для этой системы.
Все ваши мучения начнутся ещё до того, как вы скачаете Charles. Дело в том, что если вы обновляете iTunes на Mac, то у вас будет отсутствовать возможность устанавливать приложения, начиная с версии 12.7. Чтобы её вернуть, нужно установить обратно версию 12.6.4.
Что делать дальше чтобы откатить обновление приложения на iOS
Подробно: после запуска Charles нужно установить сертификаты приложения в Mac. Это делается через меню Help → SSL Proxying → Install Charles Root Cetrificate. Сертификат затем нужно в Keychain Access перевести в статус Always Trust. Если не установить, то будут ошибки и метод не сработает.
В iTunes ищем приложение Inoreader (это для любого приложения подойдёт, но меня интересовало в тот момент только оно), запускаем Charles и нажимаем в окне установки приложения Download:
В окне Charles у вас появляется подобная строчка со слово «buy» в адресе, связанная с сервером apple:
Для информации можно обратить внимание на то, что размер скачиваемого файла равен 20,4 мб:
После чего нужно включить SSL Proxying для осуществления перехвата и редактирования запросов:
Т.к., вероятней всего, у вас быстрый интернет и приложение уже успело загрузиться в библиотеку приложений, то необходимо его оттуда удалить.
Ещё раз проверяем, что SSL Proxying включен и переходим к повторной загрузке приложения из AppStore при этом нужно поставить загрузку на паузу, чтобы у вас было время на следующие действия. После нажатия на Download в окне Charles появится ещё одна строка в сервером apple, содержащая слово «buy». Развернув эту строку нужно найти buyProduct:
Справа в окне нажимаем на Contents и внизу выбираем XML Text. Листаем вниз пока не найдем softwareVersionExternalIdentifiers со списком не понятным цифр.
Эти цифры и выступают в роли версий приложений. Соответственно, чем меньше число, тем старее версия приложения. Как узнать какая версия приложения будет загружена? Например, я наугад брал с конца списка значение 823964615:
Теперь нам нужно проверить версию приложения. Для этого мы делаем встаем на «buyProduct» и в меню выбираем Compose и справа в окне представление Text.
В самом верху поля будет знакомый вам набор цифр после параметра <key>appExtVrsId</key>. Этот набор цифр — актуальная версия приложения.
Вместо этих цифр подставляем скопированные выше 823964615 и должно получиться вот так:
и делаем Execute. Программа выдаст вам окно и выбрав режим отображения XML Text мы сможем внизу найти параметр bundleShortVersionString и увидим, что выбранное нами значение соответствует версии 5.4.4, что в моём случае то что нужно, т.к. эти версия практически последней перед обновлением до 6.0
Остаётся один шаг. Нужно скачать всё это дело. Для этого нужно в нашем последнем отредактированном запросе buyProduct с полученной версией 5.4.4 в меню выбрать Breakpoints.
По новой перейти в AppStore для загрузки приложения Inoreader (если приложение успело загрузиться в библиотеку и вы не успели его остановить, то просто удалите, чтобы была возможность загрузить заново).
В итоге у вас начнётся загрузка приложения и можно будет увидеть, что размер приложения изменился в меньшую сторону:
В библиотеке приложений itunes появится значок программы с ярлыком Update. Это и будет означать, что вы сделали всё верно. Можно сделать Get Info приложения и будет написано:
Дальше у приложения смотрим где оно находится в файловой системе и сохраняем на будущее если вдруг решите обновить приложение 🙂
Надо сказать, что получилось проделать у меня данную процедуру с 2 раза.
Надеюсь, это будет кому-то так же полезно как оказалось мне.
Читайте также:
- Wow посмотри какие крутые цвета для whatsapp устали от зеленого цвета whatsapp
- Как подтвердить расходы на такси в командировке если они оплачены через приложение яндекс такси
- Как зайти в инстаграм с компьютера как с телефона без пароля и логина
- Как установить приложение на ps4 с флешки
- Как сложить приложение к диплому