10 votes

Impossible d'utiliser pleinement l'application Apple Shake dans MacOS 10.13 High Sierra

En juillet 2009, Apple a arrêté la production de Shake. Aucun remplacement direct de l'application n'a été annoncé par Apple, mais certaines fonctionnalités (stabiliser et estimation du flux optique, pour n'en citer que quelques-unes) sont désormais disponibles dans Final Cut Pro X 10.4 et Motion 5.4 en 2018.

Apple Shake a été construit sur 32-bit Carbon API . Je comprends bien que ce n'est pas 64 bits Cocoa API ces API sont différentes. Mais Carbon.framework est toujours inclus dans /System/Library/Frameworks/ dans High Sierra, Sierra ou El Capitan, et de très anciennes applications (telles que Shake, Color, Soundtrack Pro) peuvent l'utiliser.

Je continue à utiliser Shake dans High Sierra en lançant secouer via l'application Terminal :

enter image description here

enter image description here

Mais je ne peux pas (pour une raison évidente) lancer Shake en cliquant sur son icône dans la fenêtre Applications dossier :

enter image description here

J'ai donc deux questions :

  1. Que dois-je faire pour contourner cette limitation de l'OS et faire en sorte que Shake s'exécute après avoir cliqué sur son icône dans le dossier Applications ou sur le Dock ?

  2. Si le premier est impossible, comment se débarrasser de white crossed-out circle sur l'icône de Shake (le remplacement normal de l'icône ne fonctionne pas dans ce cas) ?

P.S.

J'AI TROUVÉ UNE SOLUTION POSSIBLE (grâce à Thomas Voßen) : Shake sur Mac OS X 10.11.6

  1. Faites un duplicata de Shake.
  2. Sélectionnez "Afficher le contenu du paquet".
  3. Allez dans le dossier "Contents" et ouvrez Info.plist . Xcode a un éditeur plist.
  4. Modifier l'entrée com.apple.shake et le changer en quelque chose comme com.apple.shake4 .
  5. Enregistrez le fichier plist.

Il est désormais possible de lancer Shake par un double-clic depuis le Finder dans High Sierra 10.13.5.

Mais il n'y a pas Info.plist dans Contents dossier.

7voto

Douglas Points 10417

Votre question se répond d'elle-même.

Apple Shake a été construit sur une API Carbon 32 bits. Je comprends bien que ce n'est pas une API Cocoa 64 bits.

En laissant de côté l'argument du 32 bits par rapport au 64 bits, Cocoa est totalement différent de Carbon. Il ne fonctionnera pas car les API auxquelles Shake fait référence (Carbon) ne sont pas compatibles avec ce que vous utilisez actuellement (Cocoa).

Il est important de noter que Le carbone a été déprécié en 2012 avec la sortie de Mountain Lion (OS X 10.8.x). N'oubliez pas que la raison pour laquelle Apple ajoute ou supprime des fonctionnalités et le moment où elle le fait sont ses seules prérogatives.

En 2012, avec la sortie d'OS X 10.8 Mountain Lion, la plupart des API de Carbon ont été considérées comme dépréciées. Les API sont toujours accessibles aux développeurs et toutes les applications Carbon fonctionneront, mais les API ne seront plus mises à jour.

Quant à l'exécution de Shake dans Terminal, il s'agit d'un scénario entièrement différent - Cocoa et Carbon n'entrent pas en jeu - il s'agit strictement d'une interface textuelle.

UPDATE : Après quelques recherches, j'ai découvert deux choses :

  • Shake a été relégué au rang de "logiciel incompatible" et le Finder ne le lancera pas. Point barre.

  • Il existe une solution de contournement (voir ci-dessous) pour le rendre fonctionnel dans El Capitan car les bibliothèques Carbon sont toujours incluses, bien que dépréciées. Note : Ceci n'a pas été testé/confirmé dans Sierra/High Sierra. Comme il s'agit d'un logiciel jugé "incompatible" par Apple, il n'y a aucune garantie que la solution de contournement fonctionnera dans El Capitan. entièrement travail ou pour combien de temps. YMMV.

Travailler autour

  1. Cliquez à droite sur Shake.App
  2. Aller à Contenu de l'emballage du spectacle .
  3. Allez à Contents --> MacOS --> shake (sélectionnez shake pas tshake ) ;
  4. Double-cliquez sur shake . Il devrait d'abord ouvrir une fenêtre de terminal, puis Shake devrait s'exécuter.
  5. Créez un alias (un raccourci) du fichier et placez-le où vous voulez. Launchpad ne sera pas en mesure de le voir mais vous pouvez placer le raccourci/alias dans votre dossier Applications.

5voto

Monomeeth Points 61435

C'est moi qui pense tout haut, pour ainsi dire, mais une chose qui vaut également la peine d'être essayée est d'utiliser AppleScript ou Automator pour créer une application qui fera ce que vous faites actuellement manuellement via le terminal. Une fois que vous avez fait cela, ajouter l'application à votre dossier Applications la rendra disponible dans le Launchpad, le Dock, etc.

Je ne sais pas si vous êtes familier avec AppleScript ou Automator, mais en utilisant Automator comme exemple, le processus serait en gros le suivant :

  1. Lancez Automator (qui se trouve généralement dans votre dossier Applications).
  2. Allez dans Fichier > Nouveau
  3. Sélectionnez Application et cliquez sur Choisir.
  4. Au-dessus de la deuxième colonne (plus à gauche), vous verrez un champ de recherche en haut d'une longue liste
  5. Tapez "Run" dans le champ pour filtrer la liste.
  6. L'une des options sera Exécuter le Shell script
  7. Double-cliquez sur cette option
  8. Cela ajoutera la fenêtre Run Shell script sur la droite.
  9. Maintenant, configurez et entrez le script dont vous avez besoin pour répliquer ce que vous faites déjà
  10. Allez dans Fichier > Enregistrer (ou utilisez commandS ) pour l'enregistrer en tant qu'application

Maintenant, vous devrait être en mesure de double-cliquer sur l'application que vous avez créée pour lancer Shake. Vous pouvez également modifier l'icône de l'application comme vous le souhaitez, l'ajouter au Dock, etc. Cette fonction sera également disponible dans Launchpad.

NOTE : - Je ne sais pas si j'ai encore Shake d'installé sur l'un de mes Macs, donc je n'ai pas testé cela pour m'assurer que cela fonctionnera avec Shake spécifiquement, mais en théorie cela devrait aller en se basant sur ce que vous faites déjà.

5voto

Il fonctionne sous MacOS 10.13.5 High Sierra. . J'ai fait un Info.plist et y a ajouté ces lignes :

<plist version="1.0">
<dict>
    <key>CFBundleExecutable</key>
    <string>Shake</string>
    <key>CFBundleGetInfoString</key>
    <string>Shake version 4.1.1</string>
    <key>CFBundleIconFile</key>
    <string>Shake</string>
    <key>CFBundleIdentifier</key>
    <string>com.apple.shake4</string>
    <key>CFBundleName</key>
    <string>Shake</string>
    <key>CFBundlePackageType</key>
    <string>APPL</string>
</dict>
</plist>

L'API Carbon, tout comme l'API Cocoa, est étroitement intégrée à l'API de bas niveau Core Foundation ( CF ).

Voici des informations utiles sur Bundles dans MacOS et iOS :

Guide de programmation des offres groupées - À propos des offres groupées

Guide de programmation de l'offre groupée - Structures de l'offre groupée

Maintenant, en cliquant sur l'icône de Shake dans le Dock, je peux lancer Shake dans l'interface graphique de High Sierra.

enter image description here

Je peux l'exécuter non seulement à partir de Launchpad mais aussi via Terminal. Il me permet simultanément d'exécuter plusieurs instances de Shake.

enter image description here

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X