В июле 2009 года Apple прекратила Shake. Apple не объявила о прямой замене приложения, но некоторые функции (например, стабилизация и оценка оптического потока) теперь доступны в Final Cut Pro X 10.4 и Motion 5.4 в 2018 году.
Apple Shake был построен на 32-разрядной версии Carbon API
. Я, конечно, понимаю, что это не 64-битные Cocoa API
, эти API разные. Но Carbon.framework
он все еще включен в /System/Library/Frameworks/
High Sierra, Sierra или El Capitan, и его могут использовать старые приложения (такие как Shake, Color, Soundtrack Pro).
Я все еще использую Shake в High Sierra при запуске Shake через приложение Terminal:
Но я не могу (по понятной причине) запустить Shake, щелкнув его значок в Applications
папке:
Итак, у меня есть два вопроса:
Что я должен сделать, чтобы обойти это ограничение ОС и запустить Shake после нажатия на его значок в папке «Программы» или в Dock?
Если первое невозможно, как избавиться от
white crossed-out circle
наложения на иконку Shake (обычная замена иконки в этом случае не работает)?
PS
Я НАШЕЛ ВОЗМОЖНОЕ РЕШЕНИЕ (спасибо Томасу Воссену): Shake на Mac OS X 10.11.6
- Сделайте копию Shake.
- Выберите «Показать содержимое пакета»
- Перейдите в папку «Содержание» и откройте
Info.plist
. Xcode имеет редактор списков. - Отредактируйте запись
com.apple.shake
и измените ее на что-то вродеcom.apple.shake4
. - Сохраните файл plist.
Теперь можно запустить Shake с помощью двойного щелчка в Finder в High Sierra 10.13.5.
Но Info.plist
в Contents
папке нет файла .
Ответы:
Ваш вопрос отвечает сам.
Оставляя в стороне 32-битный или 64-битный аргумент; Какао полностью отличается от углерода. Он не будет работать, потому что API, на которые ссылается Shake (Carbon), несовместимы с тем, что вы используете сейчас (Cocoa).
Важно отметить, что Carbon устарела в 2012 году с выпуском Mountain Lion (OS X 10.8.x). Помните, почему и когда Apple добавляет / удаляет функции, это полностью их прерогатива.
Что касается Shake, запущенного в Terminal, то это совершенно другой сценарий - Cocoa и Carbon не вступают в игру - это строго текстовый интерфейс.
ОБНОВЛЕНИЕ: После небольшого исследования я обнаружил две вещи:
Shake переведен в «несовместимое программное обеспечение», и Finder не запустит его. Период.
Есть обходной путь (см. Ниже), чтобы заставить его работать в El Capitan, потому что библиотеки Carbon все еще включены, хотя и устарели. Примечание: это не было проверено / подтверждено в Сьерра / Хай Сьерра. Поскольку Apple считает это «Несовместимым программным обеспечением», нет гарантии, что обходной путь будет работать полностью или в течение какого времени. YMMV.
Работа вокруг
shake
не выберитеtshake
);shake
. Сначала нужно открыть окно терминала, а затем запустить Shake.источник
Это я, так сказать, размышляю вслух, но стоит также попробовать использовать AppleScript или Automator для создания приложения, которое будет выполнять то, что вы сейчас делаете вручную через Terminal. После этого добавление приложения в папку «Приложения» сделает его доступным для Launchpad, Dock и т. Д.
Я не уверен, насколько вы знакомы с AppleScript или Automator, но на примере Automator процесс в целом будет выглядеть следующим образом:
Теперь вы должны быть в состоянии дважды щелкните на приложении , которую вы создали для запуска сотрясения. Вы также можете изменить значок приложения на любой другой, добавить его в Dock и т. Д. Это также будет доступно в Launchpad.
ПРИМЕЧАНИЕ: - Я не уверен, что Shake все еще установлен на одном из моих Mac, поэтому я не проверял это, чтобы убедиться, что он будет работать конкретно с Shake, но в теории все должно быть хорошо, исходя из того, что ты уже делаешь.
источник
Работает в macOS 10.13.5 High Sierra . Я сделал
Info.plist
и добавил следующие строки:Carbon API, а также Cocoa API тесно интегрированы с низкоуровневым Core Foundation API (
CF
).Вот полезная информация о
Bundles
MacOS и iOS:Руководство по программированию пакетов - О пакетах
Руководство по программированию пакета - Структуры пакета
Теперь, щелкнув значок Shake в Dock, я могу запустить Shake в графическом интерфейсе High Sierra.
Я могу запустить его не только с Launchpad, но и через терминал. Это позволяет одновременно запускать несколько экземпляров Shake.
источник