0

iTunesで「現在再生中」の音楽のタイトルを取得するMacアプリを作成しています。私はこのコードを使用しています:

iTunesApplication *iTunes = [SBApplication applicationWithBundleIdentifier:@"com.apple.iTunes"];
        NSString* fullTrackName = [NSString stringWithFormat:@"Now Playing: %@ - %@", iTunes.currentTrack.artist, iTunes.currentTrack.name];
        NSLog(@"%@", fullTrackName);

音楽が再生されている場合は問題なく動作しますが、iTunes を一時停止してコードを実行すると、再生されていなくても音楽の名前が自動的に取得されます。
どうすれば修正できますか?
ありがとうございました。

ところで、私はこれに iTunes.h と ScriptingBridge.framework を使用しています。

4

1 に答える 1

2

iTunesApplication現在のトラックの状態を取得するには、おそらくプレーヤーの状態プロパティを探す必要があります。

どうやら次のようです。

if ([iTunes playerState] == iTunesEPlSPlaying) {
    // Code if iTunes is not playing
}
于 2012-04-29T18:43:41.277 に答える