2

如何在 Pythonista 中收听 MediaPlayer 通知?我已经尝试过了,但是当媒体更改时 Pythonista 会崩溃。

import ui
import time
from objc_util import *

NSBundle.bundleWithPath_('/System/Library/Frameworks/MediaPlayer.framework').load()
MPMusicPlayerController = ObjCClass('MPMusicPlayerController')
NSNotificationCenter = ObjCClass('NSNotificationCenter')

def gotChange():
    print('here')

@ui.in_background
def next():
    time.sleep(2)
    sysPlayer.play()
    sysPlayer.skipToNextItem()

sysPlayer = MPMusicPlayerController.systemMusicPlayer()
sysPlayer.beginGeneratingPlaybackNotifications()
center = NSNotificationCenter.defaultCenter()
block = ObjCBlock(gotChange)
center.addObserverForName_object_queue_usingBlock_('MPMusicPlayerControllerNowPlayingItemDidChangeNotification', None, None, block)
next()
4

0 回答 0