我正在开发涉及音频播放的mac应用程序.
当我们的播放开始时,我想暂停其他音频播放器.
当我们的播放开始时,我想暂停其他音频播放器.
我怎么能够
1)检测到itunes正在运行
2)检测到itunes正在播放
3)暂停itunes
4)完成后,恢复itunes
也:
5)是否还可以暂停其他类型的媒体播放?例如在浏览器中的音频和视频?
解决方法
您可以使用以下使用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 – 从命令行中输入iTunes.错误未知类型名称“tdta”可以忽略.
您还需要将ScriptingBridge.framework添加到链接框架中.
这里也是ScriptingBridge documentation的链接.