2011-08-22 59 views
3

我對Mac編程相對較新,我需要一個簡單的守護進程在後臺運行。基本上,它必須在計算機啓動時或啓動GUI對象時啓動,它需要能夠讀取其GUI對象的NSUserDefaults,並且需要能夠顯示它自己的簡單GUI,或啓動主要的應用程序來顯示它。另外,我正在Mac應用商店發佈它,並且我已經聽到了一些特殊的方法,您必須安裝這樣的內容才能獲得用戶的許可。有沒有人有任何信息,可能是教程,如何做到這一點?我的Googleing在這方面出現異常乾燥......Mac守護進程howto(由'book')

回答

7

Technical Note TN2083如果您嘗試實現這些類型的內容,但從OS X 10.5開始尚未更新,但是,它提供了一些很好的背景和歷史。另請閱讀Daemons and Services Programming Guide,其中涵蓋了10.6/10.7中的新API,如服務管理框架和XPC。

如果您需要在計算機啓動時運行(而不是用戶登錄時),那麼您還需要安裝身份驗證;您可以(最好)在您的應用程序內使用身份驗證,或者使用安裝程序。如果您只是在登錄時運行而開心,那麼您可以使用SMLoginItemSetEnabled來創建登錄項目;這是AppStore指南中的explicitly allowed

相比之下,Mac App Store中不允許在引導時啓動的後臺進程和需要認證的應用程序。這些準則並未公開發布,但如果您擁有Mac開發者會員資格,請仔細閱讀。當然,如果你在App Store外發布你的應用,你可以自由地做到這一點。只要App Store應用程序運行良好,您也可以選擇將應用程序的全職背景方面設置爲App Store外的可選下載。