Пока интернет бурлит новостями на тему обхода блокировок телеграма и сопутствующих с этим проблем у хостинговых компаний у меня была проблема посерьёзней - компания 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. Это делается через меню 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.


В самом верху поля будет знакомый вам набор цифр после параметра 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 раза.
Надеюсь, это будет кому-то так же полезно как оказалось мне.

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

Моральный износ iPhone и iOS

В одной из наших предыдущих статей: - мы разбирали вариант, позволяющий воспроизвести онлайн видео в высоком качестве на старом компьютере.
Но если процесс морального износа железа в большинстве случаев можно считать естественным и необходимым, то вот с программным обеспечением не всегда всё так очевидно.

В вопросе устаревания ПО можно выделить два основных направления:

  1. Отсутствие поддержки и выпуска обновлений операционной системы производителем для старых устройств
  2. Отсутствие обратной совместимости новых версий программного обеспечения со старыми ОС

Срок поддержки

С первым пунктом всё ясно. Производитель смартфона не хочет тратить силы и средства на оптимизацию новой системы под устаревшее железо , даже если эта задача технически реализуема. Кроме экономии ресурсов этот шаг способствует и скорейшему росту продаж новых выпускаемых аппаратов (оттоком клиентской базы к более лояльному производителю в данном случае мы пренебрегаем), что также не говорит в пользу увеличения продолжительности поддержки своей продукции.

Обратная совместимость программного обеспечения

Что же касается вопроса обратной совместимости , то эта сторона может показаться ещё более спорной. Для начала дадим условный ответ в контексте текущей статьи на вопрос: Что такое обратная совместимость?

Обратная совместимость - это способность новых версий программного обеспечения работать со старыми форматами данных, на старой операционной системе

Очень остро оба варианта данной проблемы стоят перед владельцами прежних выпусков сотовых телефонов компании Apple .
Так, например, последняя доступная обладателям iPhone 4S версия iOS - 9.3.5 , для iPhone 4 ситуация ещё плачевнее, на данный аппарат официально можно установить лишь iOS 7.1.2 . И это при том, что последняя версия операционной системы Apple на текущий момент времени - 10.3.1

Последствия морального износа ПО

Чем же это чревато?
Одной из главных неприятностей, с которой столкнутся пользователи устаревших аппаратов Apple - то, что, зачастую, невозможно установить некоторые программы из App Store на iOS ниже определённого релиза.
В частности, для установки такой популярной программы обмена быстрыми сообщениями и звонками через интернет, как Viber , из магазина Apple потребуется наличие установленной версии iOS не ниже 8.1 . Для таких приложений, как Skype , клиент сети Вконтакте или мобильное приложение Instagram , максимально старая версия системы телефона, удовлетворяющая условиям установки перечисленного софта - iOS 8.0 .

Из всего вышесказанного можно сделать вывод, что официально у нас нет возможности установить Viber на iPhone 4 . То же касается и других упомянутых программ: Skype , vk-клиент для iOS, Instagram и многих других. Более того, эта же участь в скором времени постигнет и модели поновее, так что данный вопрос в перспективе может коснуться всё большего круга пользователей продукции компании Apple.

Однако, есть способ, позволяющий тот же Instagram установить на iPhone 4. Работать данный метод будет с большинством программ.
Суть его, способа, заключается в предварительной загрузке приложения из магазина App Store с привязкой к Apple ID и последующей установке поддерживаемой версии программы на сам телефон.

Итак, нам понадобятся:

  1. Компьютер с выходом в интернет.
  2. Подключение к сети интернет на iPhone.

Приступим.

Установка VK App в Apple ID через iTunes

Если мы попробуем установить на iPhone 4 программу Вконтакте , то у нас ничего не выйдет, мы получим ошибку Для данного контента (приложение) требуется iOS 8.0 и новее с предложением обновить аппарат до iOS 8.0

Но если мы перейдём по пути Настройки - Основные - Обновление ПО, то увидим, что у нас установлено "новейшее " ПО, а именно iOS 7.1.2 , являющаяся последней для iPhone 4

Значит, придётся искать обходные пути.

На компьютер скачиваем с официального сайта Apple программу iTunes и устанавливаем её.
Запускаем iTunes и входим под той учётной записью, с помощью которой активирован ваш айфон.

Теперь в левом верхнем углу нажимаем на выпадающее меню и выбираем там пункт Править меню...

В появившемся списке ставим галочку напротив пункта Программы и жмём кнопку Готово

Далее в выпадающем списке переходим в добавленный нами раздел Программы .
В центральной части экрана нажимаем на вкладку App Store . В правом верхнем углу, в строке поиска, вводим название интересующей нас программы, пусть это будет клиент Вконтакте для iPhone . Под иконкой приложения нажимаем кнопку Загрузить , вводим пароль от своего Apple ID и жмём кнопку Купить (приложение бесплатно, беспокоиться не о чем )

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

Установка VK App в на iPhone 4 через App Store

Подключаем телефон к интернету через мобильную сеть или посредством Wi-Fi. Запускаем App Store на устройстве и можем сразу переходить на вкладку Обновления . Здесь у нас будет то самое приложение, которое мы качали в iTunes, то есть клиент VK App . Справа от иконки программы будет кнопка в виде облака со стрелкой, которая и позволяет нам установить приложение из Apple ID.
Нажимаем на облачко

Теперь мы увидим оповещение о том, что для загрузки последней версии программы необходима обновлённая версия операционной системы . Но здесь же нам будет предложено загрузить предыдущую версию этого приложения , чем мы и воспользуемся, нажав на кнопку Загрузить

Дожидаемся окончания загрузки последней совместимой версии и можем запускать установленную программу.
Стоит упомянуть, что таким образом не удастся установить последнюю версию программы на iPhone (решение вопроса возможно при наличии Jailbreak), то есть вам, вероятно, будет недоступен полный функционал приложения, добавленный в новых релизах, но для комфортного использования основных возможностей этого, чаще всего, не требуется.

Сегодня мы поговорили о том, как установить программу на iPhone с устаревшей системой iOS .

Долгой вам поддержки и постоянных обновлений.

За счёт постоянных багов в новых версиях iOS даже те пользователи, у которых iPhone является «звонилкой», начали интересоваться процессом отката (даунгрейда) прошивок. Для открытых сборок он проходит элементарно, а для закрытых — невозможен. Но это касается исключительно мобильной ОС, с приложениями дела обстоят куда лучше. Без джейлбрейка, энциклопедических знаний и уймы времени можно легко понизить версию объекта App Store до желаемой. Необходимо только скачать правильную программу-помощник и следовать инструкциям, изложенным ниже.

Самые популярные причины для отката — это повышение требуемой версии ОС (как вариант, переход с iOS 6 на iOS 7) и умышленное вырезание разработчикам определённых функций. Как раз второй пункт и вынудил нас написать этот материал. В редакции AppStudio тепло отзываются о доступных и, в то же, время функциональных фитнес-браслетах Xiaomi Mi Band 1s, фирменное приложение которых со второй версии лишилось умного будильника, поднимающего вас с кровати в быструю фазу сна — серьёзная потеря, ведь некоторые покупали гаджет только ради комфортного пробуждения! В подобной ситуации можно либо ждать грядущего обновления, либо сделать даунгрейд, чем, мы, собственно, и займёмся.

Первым делом загружаем приложение Charles . Это отличный HTTP-монитор и прокси, позволяющий отслеживать любые запросы между клиентом и сервером, а также вносить в них собственные корректировки. Программа платная, но пробный период эксплуатации имеется, хоть и с периодическими всплывающими окнами ожидания и прекращением работы через каждые полчаса, поэтому будьте внимательны.

Запускаем iTunes и ставим на загрузку нужное приложение. Мы решили взять в качестве примера Moves (2.7.10).

Возвращаемся к Charles и смотрим на левое окно — там должна появиться строка, в которой есть слово «buy». Кликаем по ней правой кнопкой и нажимаем на «Enable SSL Proxying». Зрительно ничего не произойдёт, мы просто активируем перенаправление SSL-запроса.

Снова идём в iTunes и убиваем загрузку: щёлкаем на значок со стрелочкой в правом верхнем углу, кликаем по качающемуся приложению, а затем с зажатой клавишей FN 2 раза жмём Backspace, пока объект не исчезнет. Заодно не мешает очистить корзину.

Теперь снова вбиваем в поиск Moves (либо нажимаем на большую иконку приложения) и снова начинаем загрузку.

Опять залезаем в Charles и видим, что появилась вторая строчка с надписью «buy». Поэтому убиваем загрузку в iTunes тем же самым способом.

В Charles, в списке слева, разворачиваем вторую строку, где написано «buy», включая папку WebObjects. Там найдём файл buyProduct. Жмём на него правой кнопкой, из контекстного меню выбираем Export и указываем место сохранения (проще всего поставить Рабочий стол). Формат лучше выбрать XML Summary File, название — какое угодно.

Открываем сохранённый файл любым текстовым редактором (у нас Coda 2), листаем вниз и ищем строки, аналогичные этим:

6940998
10969069
11758907
12262840
12679839

Возвращаемся к Charles. Жмём на buyProduct и выбираем Edit.

Щёлкаем по кнопке Text в правом поле. На четвёртой строке располагаются теги :

appExtVrsId

А под ними теги и ключевое значение текущей версии приложения.

816441851

Замените число между этими тегами тем, что скопировали в шаге выше, когда отсчитывали правильную версию. Нажмите Execute внизу.

Чтобы убедиться в правильности загружаемой версии, кликните по вкладке Response и пролистайте текст до тегов с обозначением bundleShortVersionString, под которыми и будет находиться текущая версия. Как видите, маркировка «0.9» говорит об успешности эксперимента. Но это ещё не всё.

Кликаем правой кнопкой по buyProduct и выбираем Breakpoints.

Заходим в iTunes, вбиваем в поиск приложение и загружаем его. Практически сразу загрузка приостановится, а на экране появится вот такое окошко.

Жмём на Edit Request, чуть ниже выбрав XML Text.

В пятую строку, между тегами , нужно вставить версию, которую вы уже копировали и на которую желаете откатиться. Теперь давим на Execute .

Появится ещё одно окошко — опять жмём Execute .

Загрузка в iTunes должна продолжиться. В итоге в медиатеке появится старенькая версия приложения. Чтобы проверить её, перейдите в Мои программы, найдите там желаемый объект, кликните по нему правой кнопкой мыши и выберите Сведения. Там как раз и отобразятся текущие цифры, которые должны вас порадовать;)

Обязательно удалите свежую версию с iPhone/iPad перед синхронизацией, а также неплохо было бы отключить автоматическое обновление программ в настройках iOS. Без лишней надобности можно и с Charles расстаться. На этом, пожалуй, всё. Удачных вам даунгрейдов;)

К сожалению, так вышло, что пользователям устройств на iOS может потребоваться более старая версия приложения по разным причинам. Например, старое устройство , или новая версия работает нестабильно и не соответствует требованиям пользователя. Увы, установить старую версию приложения на iOS не так уж и просто, но возможно, если вам это действительно необходимо.

Хотите установить старую версию приложения? Внимательно следуйте этой пошаговой инструкции:

Шаг 1: и установите приложение Charles. Запустите его, нажмите на вкладку Grant Priveleges , если вы являетесь пользователем OS X, и введите пароль администратора.

Шаг 2: Скачайте приложение, старую версию которого вы хотите установить, с помощью iTunes на вашем компьютере и откройте вкладку Structure в приложении Charles. Вы должны увидеть сервер «buy».

Шаг 3: Кликните правой клавишей на надписи «buy» и выберите пункт Enable SSL Proxying .

Шаг 4: Остановите загрузку в iTunes.

Шаг 5: Найдите приложение снова, открыв страницу с описанием. Снова начните загрузку и снова отмените ее.

Шаг 6: Откройте всплывающее меню сервера «buy» и выберите пункт buyProduct .

Шаг 7: Кликните на Response , кликните правой кнопкой на buyProduct и выберите Export . Выберите Рабочий стол в качестве места экспорта, выберите формат XML и нажмите Save .

Шаг 8: Откройте XML-файл с помощью текстового редактора и найдите следующую строку:

softwareVersionExternalIdentifiers

Под этой строкой вы увидите приблизительно следующую информацию:

1862841
1998707
2486624
2515121
2549327
2592648
2644032
2767414

Это версии приложения от более старой к более новой. Скопируйте номер версии, которую вы хотите установить, и закройте текстовый редактор.

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

Шаг 10: Выберите Text и найдите следующую строку:

appExtVrsId

Под этой строкой вы увидите номер в теге, замените его номером, который вы скопировали, и нажмите Execute.

Шаг 11: Прокрутите вниз до Response — и вы увидите bundleShortVersionString . Под ним вы увидите выбранную вами версию приложения.

Шаг 12: Кликните правой клавишей на buyProduct в списке под сервером «buy» и выберите Breakpoints .

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

Шаг 14: Вернитесь в Charles, и вы увидите всплывающее окно. Нажмите Edit Request , затем XML Text и под строкой appExtVrsId вставьте скопированный в восьмом пункте номер. Снова нажмите Execute .

Шаг 15: Вам нужно будет нажать Execute повторно.

Шаг 16: Проверьте iTunes. Загрузка должна начаться и завершиться.

Шаг 17: Откройте вкладку Мои приложения в iTunes, и вы должны увидеть скачанное приложение. Правым кликом по нему вы можете запросить дополнительную информацию и убедиться в том, что вы скачали старую версию.

Шаг 18: Подключите свое устройство к iTunes и установите приложение на устройство.

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

Это непростая инструкция, но в некоторых случаях без нее не обойтись, если вы не хотите делать джейлбрейк устройства, а старая версия приложения нужна как воздух.

По материалам iDownloadBlog

Вчера мы о том, как iPhone и iPad можно устанавливать устаревшие версии приложений с помощью программы Charlie. Из комментариев к той статье выяснилось, что существует более простой способ, не подразумевающий использование сторонних инструментов. Этот способ работает только в том случае, если новая версия приложения не поддерживается вашим устройством из-за системных требований.

Если вы пользуетесь старым смартфоном или планшетом Apple либо не обновляли iOS до восьмой или девятой версии, вы неизбежно столкнетесь с ограничениями - App Store будет предлагать вам сначала или обновить операционную систему. Тем не менее, можно схитрить и скачать не новую версию приложения, а совместимую со старой техникой или устаревшей сборкой iOS.

Как установить на iOS старую версию приложения?

1. Зайдите в системные настройки iPhone или iPad и включите синхронизацию с iCloud.
2. Запустите iTunes на компьютере и скачайте нужное вам приложение, пусть даже в новой версии.
3. Откройте App Store на мобильном устройстве и найдите то приложение, которое вы скачали через iTunes.
4. Возле названия приложения вместо кнопки «загрузить» появится кнопка с облаком, которая показывает, что в вашей учетной записи уже зарегистрирована «покупка», и вы можете свободно загрузить это приложение на свое устройство.
5. Если ваш iPhone или iPad несовместим с этим приложением, система выдаст ошибку и... предложит скачать ту версию, которая когда-то была с ним совместима.
6. Подождите некоторое время - устаревшая версия приложения загрузится на ваше устройство.

Еще раз подчеркнем, что этот способ установки можно использовать только на старых устройствах (iPhone 3, 4 и т.п.), а устанавливать устаревшие версии приложений на новые смартфоны и планшеты Apple можно с помощью приложения Charlie, о котором мы недавно писали. Charlie работает как прокси, который скачивает с серверов Apple нужную вам версию приложения - более стабильную, чем новая или с возможностями, которые были впоследствии убраны разработчиками. Одно из таких приложений - официальный клиент «ВКонтакте», в котором когда-то был полноценный музыкальный раздел, а теперь доступны лишь отрывки из песен, ведущие в магазин iTunes.

Редакция не остается в стороне от предновогоднего ажиотажа и подготовки сюрпризов. Вместе с интернет-магазином Apple Jesus мы приготовили один из лучших подарков для любого праздника - новенький iPhone 6s любого цвета по вашему усмотрению. Для участия в розыгрыше нужно выполнить всего лишь пять простейших заданий. Читайте , участвуйте и удачи вам!