1

所以,我有一个状态栏应用程序,当我点击它时,它会做一些事情,比如检索当前艺术家、曲目等等......
所以当点击状态栏时,我会检查

if([iTunes isRunning]){
    NSLog(@"do my stuff...");
}

它工作得很好,但有时在 iTunes 启动或关闭时我会遇到一些问题:

  1. 如果 iTunes 正在启动(图标在 Dock 上弹跳)并且我单击我的应用程序的状态栏图标,当我的鼠标悬停状态栏图标并且我的应用程序只是冻结时会出现“彩虹加载圈”(或沙滩球)。当 iTunes 完成启动并显示我的库窗口时,我的应用程序将继续其工作而不会出现问题。这不是一个大问题,因为该应用程序继续工作,即使它在 iTunes 启动时冻结。
  2. 当 iTunes 关闭时,如果我足够快地点击状态栏图标(在 iTunes 完全关闭之前),可能会发生 2 件事:1- iTunes 将重新打开,即使我选择关闭它,2- iTunes 已成功关闭但是我的应用程序将永远冻结,当我的鼠标悬停在状态栏图标时会出现“彩虹加载圈”。即使我尝试再次打开 iTunes,我的应用程序也会保持这种状态。我必须去活动监视器来停止这个过程。

关于如何解决其中一些问题的任何想法?
谢谢!

4

0 回答 0