我的应用程序的部分功能是获取当前播放的iTunes曲目的专辑封面(使用Scripting Bridge).我能做得很好.但是,当曲目没有播放时,我想获得iTunes和Finder都有的默认专辑封面.这可能来自代码吗? (如果没有,怎么回事?)
解决方法
我不确定iTunes在哪里获得它,但我相信Finder通过向QuickLook索取该文件的缩略图来间接获取它.
所以,正确的答案可能是做同样的事情.要么手动获取专辑封面,要么在失败的情况下作为后备,获取并显示QuickLook缩略图.
但是,如果您想要快速和脏的东西,您可以随时从QuickLook.framework包中读取名为“Generic Artwork 512”的“png”类型的资源.为了防止Apple将来搬家,你可以确保加载QuickLook,然后在任何开放的捆绑包中查找资源,但是你仍然需要仔细观察每个新的操作系统版本.
您还可以绘制自己非常相似的图像 – 这实际上不是UI组件,因此您不会通过绘制非标准UI组件来混淆用户 – 但这看起来并不理想.当然,你可以希望图像简单而通用,你可以合法地将它复制到你自己的应用程序中,但前提是你有好律师向你保证这并不像听起来那么愚蠢.