2015-01-26 3 views
4

Я делаю приложение mac, используя atom shell, который живет в строке меню. Мне было интересно, какие у меня будут варианты для запуска его при запуске.Получение приложения для запуска при запуске

  • Нужно ли это делать вручную?
  • Нужно ли мне разрешение от пользователя?
  • Как бы это сделать программно с помощью узла/bash?
  • Есть ли существующее в оболочке атома для этого?
  • Есть ли существующий модуль, который может это сделать?

ответ

7

Дайте модулю auto-launch попробовать, он должен делать то, что вы хотите. Чтобы ответить на ваши вопросы:

  • Нет
  • Нет, но было бы Classier ™, если вы спросили первым
  • см.выш
  • Нет
  • см.выша.
0

Опции были бы для его запуска при запуске.

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

Просто создайте файл plist, который описывает, что должно делать задание, и скопируйте plist в/Library/LaunchAgents.

PLIST будет что-то вроде этого: -

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>ProgramArguments</key> 
    <array> 
     <string>My_executable</string> 
     <string>some_command_line_parameter</string> 
    </array> 
    <key>RunAtLoad</key> 
    <true/> 
    <key>Label</key> 
    <string>com.mycompany.myapp</string> 
</dict> 
</plist> 

Заменить My_executable полный путь к приложению (если это .app, точка в my_application.app/Contents/MacOS/my_binary) и добавить параметры командной строки, как это требуется. Если atom_shell требует запуска оболочки, вы должны использовать это как приложение для запуска, а ваш скрипт - как параметр командной строки.

Также убедитесь, что вы установили ярлык в уникальный URI.

+0

Что делать, если путь изменяется? – ThomasReggi

+0

Вы можете указать путь plist к скрипту, который читает путь из файла или другого источника. Почему меняется путь? Несомненно, это означает, что вы выполняете другое приложение. – TheDarkKnight

+0

Я пробовал это решение и не смог заставить его работать. Программа просто не запускается. Я не уверен, что он должен работать для файлов .app' и графических приложений. – thomasb

0

Вы также можете создать каталог приложений в каталоге side /applications/Atom.app/Content/resources атома и символической ссылки на ваши файлы. Это запустит ваше приложение при запуске.