2012-07-11 14 views
11

Sto usando i metodi descritti qui: http://weblog.rogueamoeba.com/2007/09/29/Rilegatura tasti multimediali, iTunes blocco OS X

e leggere questa discussione: Binding to Media keys on Apple keyboards under OSX 10.5

ho sovrascritto la classe sendEvent, e in grado di rilevare tasto multimediale ingresso. Il problema è che iTunes si avvia quando viene premuto il pulsante Riproduci. Il thread sopra menzionato afferma che iTunes si collega all'evento da qualche altra parte (sconosciuto), quindi non c'è un modo per impedirgli di ottenere l'evento Play/Pausa (F8).

Come soluzione temporanea, ho lasciato Quicktime Player aperto senza file. Tuttavia, su Mountain Lion, Quicktime si chiude automaticamente dopo un certo periodo di inattività, rendendo così questa soluzione alternativa non valida.

So che applicazioni come Spotify e MPlayerX sono state in grado di raggiungere questo risultato in qualche modo. Sembrano bloccare completamente l'evento, non solo per iTunes.

Più googling, ho trovato questo discussioni.apple.com/thread/2122639?start=210 & tstart = 0 che consente di rintracciare il Remote Control Daemon effettuando le chiamate tramite Applescript. Ci sono alcune soluzioni che rimuovono il permesso di esecuzione sul demone rcd (richiede sudo, deve essere rieseguito ogni volta che OSX viene aggiornato). nomitsu.com/contents/MMFix_src.tgz

Qualcuno ha qualche idea su come (MPlayerX, Spotify) è stato in grado di farlo è un modo meno hacky?

Grazie per qualsiasi consiglio.

risposta

15

ho trovato una classe preesistente che farà questo: http://overooped.com/post/2593597587/mediakeys

Wow, che ha preso un po 'cercando di trovare! Spero che aiuti qualcun altro!

+8

+1 pagina GitHub: [SPMediaKeyTap] (https://github.com/nevyn/SPMediaKeyTap). Grazie per la condivisione :) – Anne