Mac守护进程howto(由'书'')

时间:2011-08-22 15:46:24

标签: macos daemon osx-lion mac-app-store

我对Mac编程比较陌生,我需要一个简单的守护进程才能在后台运行。基本上它必须在计算机启动时或者在GUI对应启动时启动,它需要能够读取其GUI对应的NSUserDefaults,并且它需要能够显示它自己的简单GUI,或者启动显示它的主要应用程序。此外,我在Mac应用程序商店发布它,我听说有一种特殊的方式你必须安装这样的东西,以获得用户的许可。有没有人有关于如何做到这一点的任何信息,也许是一个教程?我的Googleing在这方面异常枯竭......

1 个答案:

答案 0 :(得分:7)

如果您正在尝试实现这些类型的东西,那么

Technical Note TN2083几乎是必需的,但是自OS X 10.5以来还没有更新过;然而,它提供了一些良好的背景和历史。另请阅读Daemons and Services Programming Guide,其中涵盖了10.6 / 10.7中的新API,例如服务管理框架和XPC。

如果您需要在计算机启动时运行(而不是在用户登录时运行),那么您还需要安装身份验证;您可以(最好)在您的应用程序中使用身份验证,或使用安装程序。如果您只是在登录时运行,那么您可以SMLoginItemSetEnabled创建一个登录项;这是App Store指南的explicitly allowed

相比之下,在Mac App Store中不允许在启动时启动的后台进程和需要身份验证的应用程序。该指南不公开,但如果您拥有Mac开发者会员资格,请仔细阅读。当然,如果您在App Store外部发布应用程序,则可以自由地执行这两项操作。您还可以选择将应用程序的全时背景方面作为App Store外部的可选下载,只要您的App Store应用程序在没有它的情况下正常运行。