Как я могу автоматизировать хранение исторических версий приложений iOS на Mac?

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

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

Мой нынешний способ архивирования старых iOS-приложений является одновременно ручным и, следовательно, нефункциональным.

В настоящее время я перемещаю копии вручную в папку с именем «старые приложения iOS». Я также полагаюсь на Time Machine, чтобы предоставить исторические копии приложений для редкого случая, когда обновление приложения вызывает у меня проблемы с функциональностью приложения. Я предпочитаю, чтобы iTunes управляла только активно установленными приложениями, удаляя то, что я не использую регулярно, и позволяя следующей синхронизации iOS вернуть только те приложения, которые используются в данный момент. Недостатком скудной библиотеки iTunes является то, что найти старое приложение можно случайно — нужно вспомнить, когда оно было сохранено в Time Machine. Эта нерешительность также мешает поддерживать iTunes компактным, поскольку у меня нет хорошего процесса архивирования этих программ.

Что люди делают, чтобы все копии iOS-приложений были организованы, не завися исключительно от Time Machine? Я ищу автоматизированный процесс архивации приложений, доставленных из магазина приложений iOS.

Ответы (1)

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

Использование Time Machine — это простой способ проверить вашу историю, и он должен быть очень эффективным при условии, что вы используете его регулярно и по обычному часовому графику, но, возможно, люди не настроили его или используют внешний диск. что часто не подключается в течение длительного времени (виноват в том, что заряжается).

Итак, ключ к успеху — опередить iTunes и создать свой собственный архив приложений, и вы можете разбить это на 2 простых шага, первый — заметить, когда приложение изменилось, а второй — что-то с этим сделать.

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

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

Сценарий, который вы применяете к действию с папкой, может быть каким угодно, и самый простой способ — создать что-то в Automator, что позволяет вам объединять различные специфические функции приложения с битами AppleScript или даже сценариями Shell для достижения конечного результата. в нашем случае копирование обновленных приложений и их архивирование.


  • Итак, для начала давайте запустим Automator и выберем «Действие с папкой» в качестве типа документа.

  • С левой стороны находится столбец (может потребоваться расширение в разделе «Библиотека») наборов действий, выберите «Файлы и папки» и в списке, который появится под соседним столбцом, перетащите следующие два элемента в пространство справа от столбца. экран:

    • Копировать элементы Finder
    • Переименовать элементы Finder
  • Затем либо создайте (или найдите) папку резервных копий, в которой вы хотите хранить резервные копии, и в задачах «Действия по поиску копий» либо перейдите к этому местоположению, либо просто перетащите его поверх имени папки, чтобы он выбрал его.

  • Вторая задача, «Переименовать элементы Finder», скорее всего, будет называться «Добавить дату или время», что странно, пока вы не поймете, что это просто первый предлагаемый метод переименования. Измените выбор на «Make Sequential», параметры по умолчанию должны говорить сами за себя, добавляя номер к каждому файлу, который переименовывается, начиная с и т. Д. -1.ipa(Обратите внимание, что переименование файла происходит перед расширением файла, поэтому вы получите файл -1.txt, а не файл.txt-1)

  • Теперь над двумя вашими задачами вы, вероятно, заметили возможность выбора папки, к которой применяется действие. Просмотрите и найдите здесь папку с мобильными приложениями, скорее всего, это что-то ~/Music/iTunes/iTunes Mediaгде-то, точное местоположение зависит от возраста вашей библиотеки iTunes, текущей версии iTunes и от того, как вы позволяете iTunes организовывать свои папки, для меня это было Mobile Applicationsв вышеуказанная папка. По сути, вы ищете папку, заполненную файлами, оканчивающимися на .ipa.

  • Теперь ваш Automator должен выглядеть примерно так:

Окно Автоматизатора

  • Теперь вы можете сохранить свое действие, я назвал свое «Резервное копирование приложений Itunes», не беспокойтесь, куда он сохраняет файл (что на самом деле ~/Library/Workflows/Applications/Folder Actions/)

  • Теперь у вас есть действие, которое вы только что создали, примененное к выбранной вами папке. Вы можете доказать это, просто щелкните правой кнопкой мыши любую папку и выберите «Настройка действий с папками», отсюда вы можете выбрать уже существующее действие и назначить его папке без необходимости воссоздавать все это, просто выбрав добавить из списка известных действий, которые вам представлены; обратите внимание, что ваше новое действие указано в предоставленных параметрах, но пока нажмите «Отмена». Вы увидите список папок, для которых назначены действия. Выберите папку «Мобильные приложения», и там вы увидите следующее:

Окно действий с папкой

  • Вот и все. Поскольку iTunes удаляет приложения и заменяет их обновлениями, каждый новый файл имеет копию, сделанную в момент его добавления, а это означает, что не имеет значения, когда он впоследствии будет удален. Обратите внимание, что иногда приложения включают информацию о версии в именах файлов, иногда они полностью меняют имена (например, Read It Later становится Pocket), а иногда они используют точно такое же имя (именно здесь для дополнительной безопасности используется переименование с последовательной нумерацией). )

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

Обратите внимание, что многие идеи в посте были вдохновлены статьей Macworld , которая представляет тот же процесс, но менее подробно.

Вау, фантастический ответ!
Я собираюсь убедить вас обновлять это с помощью нового iTunes, как только он будет наконец выпущен.
Я надеюсь, что он еще будет стоять. Но важно начать делать это сейчас, так как iPad 1 в моем доме — первое устройство, которому грозит автоматическое обновление до несовместимой версии приложения...