Меню Рубрики

Как откатить версию программы на айфоне

Как откатить обновление для любого приложения на iPhone и iPad

С недавних пор Apple открыла доступ ко всем версиям мобильных программ для iOS. Charles Proxy – полезный инструмент для Mac и Windows, с помощью которого можно загружать из App Store более старые версии игр и приложений.

В каких ситуациях это может пригодиться? Необходимость в откате с самых свежих релизов может быть связана с появлением в обновлениях программных ограничений (вроде удаления музыкального раздела «ВКонтакте») или разного рода сбоев.

Ниже инструкция о том, как сделать даунгрейд приложений на iPhone и iPad:

Шаг 1: Скачайте, установите и запустите Charles по этой ссылке. На Mac нажмите кнопку Grant Privileges и введите пароль администратора.

Шаг 2: Запустите iTunes и скачайте в магазине приложение, для которого вы хотите сделать даунгрейд.

Шаг 3: В окне Charles вы увидите несколько серверов, к которым подключается iTunes, вам нужно найти тот, в котором есть слово «buy». Сделайте правый клик по нему и выберите Enable SSL Proxying.

Шаг 4: Вернитесь в iTunes и остановите загрузку приложения.

Шаг 5: Снова найдите это приложение в поиске iTunes и нажмите кнопку Загрузить.

Шаг 6: Вернитесь в Charles и поищите строчки со словом «buy». В окне программы вы увидите уже второй объект с надписью «buy». Он нам и нужен. Вернитесь в iTunes и остановите загрузку.

Шаг 7: В приложении Charles раскройте до конца ветку со словом «buy» и найдите строчку buyProduct. Сделайте правый клик, затем Export и укажите рабочий стол в качестве места для сохранения файла.

Шаг 8: На рабочем столе у вас появится новый XML-файл. Откройте его в любом текстовом редакторе и найдите поле:

Ниже вы увидите строчки вроде:

1862841
1998707
2486624
2515121
2549327
2592648
2644032
2767414

Это разные версии вашего приложения, начиная с самой старой до самой новой. Скопируйте в буфер обмена нужный номер версии (наугад).

Шаг 9: Вернитесь в Charles, сделайте правый клик на buyProduct и выберите Edit.

Шаг 10: Нажмите внизу Text и найдите следующую строчку в верхней части страницы:

Сверху между ключами XXXX вы увидите значение. Замените его тем, что скопировали его на шаге 8. После этого кликните Execute внизу.

Шаг 11: Пролистайте вниз на вкладке Response до строчки bundleShortVersionString . Ниже вы увидите цифровое значение версии приложения. Если это не та версия, которая вам нужна, повторите процедуру, начиная с шага 8, скопировав в буфер обмена уже другое значение.

Шаг 12: Снова сделайте правый клик по buyProduct, но на этот раз выберите Breakpoints.

Шаг 13: Переключитесь на iTunes, найдите ваше приложение и обновите страницу. Нажмите кнопку Загрузить.

Шаг 14: Вернитесь в Charles, выберите объект со словом «buy», а в правой части окна переключитесь на Edit Request –> XML Text. Здесь в поле XXX вставьте из буфера код, скопированный на шаге 8. Нажмите кнопку Execute.

Шаг 15: Когда увидите Breakpoint, снова нажмите Execute.

Шаг 16: Вернитесь в iTunes: загрузка должна продолжиться.

Шаг 17: Посмотрите на вкладку Мои программы, куда скачается программа. Найдите ее в списке и сделайте правый клик – Сведения. Обратите внимание на поле версия: это должна быть старая сборка программы.

Шаг 18: Подключите iPhone или iPad к компьютеру и перенесите иконку приложения на ваше устройство. Перед синхронизацией гаджета убедитесь, что удалили с устройства более новое приложение. После завершения синхронизации на вашем гаджете будет старая версия программы.

Шаг 19: Закройте и удалите Charles.

Ниже можно посмотреть видеоинструкцию по даунгрейду от iDB:

Источник

Обновилось приложение на iOS? — Не беда, откатим

Пока интернет бурлит новостями на тему обхода блокировок телеграма и сопутствующих с этим проблем у хостинговых компаний у меня была проблема посерьёзней — компания Innologica обновила до версии 6 приложение Inoreader для iOS.

Тихим будничным вечером приложение в телефоне было случайно обновлено до последней версии, т.к. обычно ничто не предвещало беды. Спустя пару дней во время поездки программа была запущена для чтения новостей и я не на шутку начал переживать.

Можно сравнить как было и как стало в двух примерах:

Конечно, на вкус и цвет и владельцы iPhone X были явно рады оптимизации под amoled-экраны, но именно этот апдейт побудил искать решения как откатить приложение назад, чего по умолчанию AppStore не позволяет делать.

Раньше достать ipa—файл приложения было делом 2 минут, достаточно было зайти на apptrackr и скачать, но он перестал работать и других подобных ресурсов дающих честно скачать ipa файл обнаружено не было (но вдруг вы такие знаете?).

Остались следующие способы получения старой версии приложения:

  1. У вас в iTunes лежит старый бэкап приложений с телефона и тогда можно просто скопировать приложение обратно (но у меня такого не было).
  2. Воспользоваться способом, описанным на скорую руку кем-то в интернете с помощью софта под названием Charles. Данный способ описан на ресурсах вроде 4dpa и пере-копирован множествами лиц без понимания что там вообще написано, однако, без дополнительных >100 грамм разобраться с этой писаниной сложно.

Возможно, я это сделаю более полно, с картинками и в более простой понятной форме. В общем, чтобы скачать софт старой версии из AppStore потребуется минут 5 времени и в моём случае Mac OS X. Способ явно будет работать и на Windows, т.к. приложение Charles есть и для этой системы.

Все ваши мучения начнутся ещё до того, как вы скачаете Charles. Дело в том, что если вы обновляете iTunes на Mac, то у вас будет отсутствовать возможность устанавливать приложения, начиная с версии 12.7. Чтобы её вернуть, нужно установить обратно версию 12.6.4.

Что мы будем делать дальше?

Коротко: загрузить приложение через AppStore в iTunes, затем включить прокси, затем загрузить ещё раз, отредактировать запрос, отправить запрос, получить старую версию, установить.

Подробно: после запуска Charles нужно установить сертификаты приложения в Mac. Это делается через меню HelpSSL ProxyingInstall 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.

В самом верху поля будет знакомый вам набор цифр после параметра appExtVrsId . Этот набор цифр — актуальная версия приложения.

Вместо этих цифр подставляем скопированные выше 823964615 и должно получиться вот так:

и делаем Execute. Программа выдаст вам окно и выбрав режим отображения XML Text мы сможем внизу найти параметр bundleShortVersionString и увидим, что выбранное нами значение соответствует версии 5.4.4, что в моём случае то что нужно, т.к. эти версия практически последней перед обновлением до 6.0

Остаётся один шаг. Нужно скачать всё это дело. Для этого нужно в нашем последнем отредактированном запросе buyProduct с полученной версией 5.4.4 в меню выбрать Breakpoints.

По новой перейти в AppStore для загрузки приложения Inoreader (если приложение успело загрузиться в библиотеку и вы не успели его остановить, то просто удалите, чтобы была возможность загрузить заново).

Как только вы в iTunes нажмете скачать, то выскочит окно Charles, где нужно будет нажать на Edit Request и в уже знакомом параметре appExtVrsId исправить версию на 823964615, нажать Execute, а затем ещё раз на Execute.

В итоге у вас начнётся загрузка приложения и можно будет увидеть, что размер приложения изменился в меньшую сторону:

В библиотеке приложений itunes появится значок программы с ярлыком Update. Это и будет означать, что вы сделали всё верно. Можно сделать Get Info приложения и будет написано:

Дальше у приложения смотрим где оно находится в файловой системе и сохраняем на будущее если вдруг решите обновить приложение 🙂

По завершение работы следует в Charles сделать Disable SSL Proxying кликом на сервере p30-buy.itunes.apple.com.

Надо сказать, что получилось проделать у меня данную процедуру с 2 раза.
Надеюсь, это будет кому-то так же полезно как оказалось мне.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Ящик для wifi роутера в квартире
  • Яндекс маркет wifi роутеры
  • Яндекс внутри роутер асус
  • Яндекс dns в роутере asus
  • Як роздати вай фай з компютера без роутера