我想进行连续循环以从 iTunes 获取信息,以获取以下内容:播放器位置 (1:37)、当前正在播放的轨道等...我正在使用 iTunes.h
和ScriptingBridge
获取 iTunes 数据。
我尝试过使用 [NSTimer scheduledTimerWithTimeInterval:0 target:self selector:@selector(getInformation) userInfo:nil repeats:YES];
但从我在事件监视器上看到的情况来看,这会消耗大量 CPU,例如,如果我按下 NSWindow
内的按钮我在哪里有NSTimer
,我的应用程序的 UI 本来应该更新,但没有更新。如果我松开按钮,用户界面就会开始正常更新。
我也尝试过使用 while(1){}
但由于某种原因我的应用程序卡住了。
Any1 是否知道如何执行我正在寻找的操作?
最佳答案
这会疯狂地消耗CPU..不要轮询!
<小时/>注册分布式通知:
//the distributed notification sent
#define SONG_CHANGE_NOTIFICATION @"com.apple.iTunes.playerInfo"
<小时/>
无耻的广告:看看 github 上的 DDBoomBox 源代码,它完全可以做你想做的事:)
关于objective-c - 进行连续循环以从 iTunes 获取信息的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14085893/