OSX如何将Dock中的Calendar图标更新为当前日期?

Ste*_*ini 8 macos

当应用程序未运行时,OSX Dock中的图标由Info.plist条目CFBundleIconFile决定.然后,应用程序可以在运行时更改此图标.唯一不符合此图标的是"日历"图标,即使应用程序未运行,该图标也始终显示实际当前日期.这是如何实现的?我检查了.app和Info.plist,并没有任何指示我的机制.日历是否由Dock神奇地处理?

Tho*_*ing 5

AppKit 允许您采用NSDockTilePlugIn协议创建 Dock Tile 插件。Dock Tile 插件打包为主应用程序内的捆绑包。它们被加载到SystemUIServer进程中,因此即使主应用程序未运行也可以更新停靠图标。详细信息可以在Dock Tile 编程指南
中找到。

Apple在这里提供了一个简单的 Dock Tile 示例。遗憾的是,该示例在较新的 OS X 版本上运行时似乎有点不稳定。