代码之家  ›  专栏  ›  技术社区  ›  Raz

从cocoa应用程序控制iTunes

  •  13
  • Raz  · 技术社区  · 16 年前

    我正在开发一个mac应用程序,涉及音频播放。 我想暂停其他音频播放器时,我们的播放开始。


    1) 检测itunes是否正在运行
    2) 检测itunes当前正在播放
    3) 暂停itunes
    4) 完成后恢复itunes

    也:

    3 回复  |  直到 16 年前
        1
  •  18
  •   MKroehnert    16 年前

    您可以使用以下使用ScriptingBridge的代码来实现这一点:

    #import "iTunes.h"
    #import "Cocoa/Cocoa.h"
    
    int main()
    {
      iTunesApplication* iTunes = [SBApplication applicationWithBundleIdentifier:@"com.apple.iTunes"];
    
      // check if iTunes is running (Q1)
      if ([iTunes isRunning])
      {
        // pause iTunes if it is currently playing (Q2 and Q3)
        if (iTunesEPlSPlaying == [iTunes playerState])
          [iTunes playpause];
    
        // do your stuff
    
        // start playing again (Q4)
        [iTunes playpause];
      }
      return 0;
    }
    

    iTunes.h 是通过运行 sdef /Applications/iTunes.app | sdp -fh --basename iTunes 从命令行。错误 unknown type name "tdta"

    您还需要添加ScriptingBridge.framework 链接的框架。

    ScriptingBridge documentation .

        2
  •  5
  •   Peter Hosey    16 年前

    1) 检测itunes是否正在运行

    NSRunningApplication 或 Process Manager .

    2) 检测itunes当前正在播放
    3) 暂停itunes
    4) 完成后恢复itunes

    Scripting Bridge.

        3
  •  2
  •   Eric Brotto    16 年前