Прослушивание событий AppleScript - PullRequest
3 голосов
/ 18 июля 2011

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

Delay Song_duration

У меня проблема в том, что пользователь пропускает песню вручную или меняет песню;Я вижу события, называемые «следующий трек» и «предыдущий трек», но кажется, что вы не можете делать такие вещи, как:

if (next track) then

, потому что это делает событие в скобках.То, что я хочу знать, есть ли способ слушать событие.Я не очень разбираюсь в AppleScript, просто искал ответы в Интернете.

Основной смысл сценария в том, что я хочу получить название трека и исполнителя мгновенно, используя как можно меньше CPU / Memory илиЯ бы просто сделал задержку 1.

1 Ответ

3 голосов
/ 18 июля 2011

По сути, вы не можете сделать это с яблочным сценарием.

iTunes отправляет системное уведомление при каждом изменении состояния, называемое «com.apple.itunes.playerInfo».Поэтому вам нужно писать на языке, который может получать системные уведомления, например, цель-c.На этом языке вы регистрируетесь для системных уведомлений в NSDistributedNotificationCenter.После регистрации ваша программа будет работать в фоновом режиме, практически не используя системных ресурсов, а затем всякий раз, когда что-то изменится в iTunes, ваша программа получит уведомление, а затем вы что-то сделаете с iTunes.* ссылка на аналогичный вопрос и пара решений опубликованы.

...