Cercare aiuto/tutorial/codice di esempio sull'uso di python per ascoltare distributed notifications dalle applicazioni su un Mac. So che la libreria py-objc è il bridge tra le classi python e mac/cocoa e la libreria Foundation può essere utilizzata per aggiungere osservatori, ma cercando esempi o tutorial su come utilizzarla per monitorare iTunes.Come ascoltare le notifiche da iTunes su un Mac (utilizzando NSDistributedNotificationCenter)
risposta
Se qualcuno viene da a questa domanda, ho capito come ascoltare, il codice seguente funziona, tuttavia gli attributi di accesso non sembrano funzionare come l'accesso standard agli attributi python
Aggiornamento: non si accede agli attributi come si farebbe in python ie (.x), il codice è stato aggiornato di seguito, adesso genera un dict chiamato song_details
Torna su date3: aggiornamento al codice, ora sottoclasse NSObject, rimosso aggiungendo addObserver dalla classe. Manterrà il codice aggiornato su github, non ci sono più aggiornamenti qui.
import Foundation
from AppKit import *
from PyObjCTools import AppHelper
class GetSongs(NSObject):
def getMySongs_(self, song):
song_details = {}
ui = song.userInfo()
for x in ui:
song_details[x] = ui.objectForKey_(x)
print song_details
nc = Foundation.NSDistributedNotificationCenter.defaultCenter()
GetSongs = GetSongs.new()
nc.addObserver_selector_name_object_(GetSongs, 'getMySongs:', 'com.apple.iTunes.playerInfo',None)
NSLog("Listening for new tunes....")
AppHelper.runConsoleEventLoop()
Il codice sorgente per GrowlTunes potrebbe darvi alcuni indizi qui. Dovresti tradurre da Objective-C a PyObjC, ma eh, qualunque cosa. :)
GrowlTurnesController.m (O afferrare l'intero albero dei sorgenti growl e passare alla GrowlTunes in modo da poter vedere tutto in azione .: here's a link to the directions on how to get the source
Grazie per l'aiuto, siamo riusciti a capirlo usando il sito web pyobjc e il sito web di apple. – ismail
- 1. Come ascoltare le modifiche al file system MAC - kFSEventStreamCreateFlagWatchRoot
- 2. Come ottenere le notifiche da QGraphicsScene su addItem o itemChange?
- 3. Ricerca di un brano su iTunes
- 4. Disabilitare le notifiche su un URI ContentProvider
- 5. Come posso ascoltare un evento del mouse in Python su Mac?
- 6. : come cancellare le notifiche?
- 7. Come ascoltare solo su localhost su MongoDB
- 8. TcpListener: come ascoltare sulla porta specifica su tutte le interfacce?
- 9. Notifiche Realm.io [Java] - Come ascoltare le modifiche solo in determinate tabelle?
- 10. Disattiva programmaticamente le notifiche su Android
- 11. Come utilizzare le notifiche push basate su geo su iOS?
- 12. Come estrarre le stringhe hardcoded da un binario in Mac?
- 13. jQuery: come ascoltare le modifiche al DOM?
- 14. Come ottenere le statistiche delle mie app su itunes?
- 15. Sottoscrizione per le notifiche da un CBCharacteristic non funziona
- 16. Come programmare la sveglia del sistema utilizzando le preferenze di sistema su un Mac?
- 17. Notifiche Growl per Mac OS X/RSS
- 18. Come scrivere da R negli appunti su un mac
- 19. Come esportare il certificato da Chrome su un Mac?
- 20. Come trovo la cartella della libreria di iTunes su Mac e Windows?
- 21. iTunes 11 script su Windows
- 22. Ascoltare le modifiche in Redis?
- 23. Come ascoltare su più indirizzi IP?
- 24. Come ascoltare un metodo astratto?
- 25. Come ottenere recensioni di app da Itunes
- 26. Come inviare notifiche ad Android da php?
- 27. Rileva FN-Key su Mac utilizzando Javascript
- 28. Come rimuovere l'app tvOS da iTunes Connect?
- 29. Come posso inviare notifiche da utente a utente su onesignal?
- 30. Controllo iTunes da un'applicazione di cacao
iTunes pubblica effettivamente le notifiche distribuite in questi giorni? –
Sì, lo fa .... in com.apple.iTunes.player, utilizzando l'orologio di notifica posso vederli. – ismail