我有一個啓動守護程序,需要在OSX的用戶會話中產生一個托盤圖標。我目前的問題是:有沒有辦法在用戶登錄或註銷時獲取事件?類似於在Linux上使用logind或consolekit。檢測用戶是否登錄或註銷
1
A
回答
1
你想要的工具是LaunchAgent。當用戶登錄時,LaunchAgent會自動啓動,並在註銷時關閉。如果您還有LaunchDaemon,則可以使用LaunchAgent從用戶上下文與它進行通信。詳細信息請參見Creating Launch Daemons and Agents,以及如何設置。確保也查看XPC服務(在同一文檔中)以瞭解進程間通信的一種方式。您也可以使用回送網絡,但XPC在適當的情況下功能更強大並且更受歡迎。
如果你正在建造這種東西,你一定要閱讀整個Daemons and Services Programming Guide和TN2083: Daemons and Agents。該技術說明可能是您爲這類問題閱讀的最重要的文檔。 OS X在這方面不像Linux(或BSD)。
+0
這不是我想要的。我想我只是解釋了一下我需要的東西。我需要的服務將始終保持連接。但是,只有當用戶登錄並且托盤圖標正在運行時,纔會接受某種類型的連接。這就是爲什麼我需要檢測登錄。 – Nidhoegger
相關問題
- 1. 檢測用戶是否註銷Facebook
- 2. 確定用戶是否登錄或註銷
- 3. 檢測登錄的用戶是否爲未註冊的用戶
- 4. 單元測試用戶登錄/註銷
- 5. 檢測用戶是否已登錄
- 6. 檢測用戶是否登錄到Facebook
- 7. 檢測用戶登錄/註銷xmpp谷歌應用引擎
- 8. GitHub如何檢測登錄/註銷?
- 9. 檢測註銷並登錄PowerShell
- 10. 檢查cookie是否存在使用jquery/js登錄註銷
- 11. 使用Laravel 5檢查「其他」用戶是否已登錄/註銷
- 12. 是否有可能讓用戶登錄和註銷手機?
- 13. 檢索在線用戶通過登錄和註銷記錄
- 14. 檢測用戶是否已註銷聊天
- 15. 如何檢查用戶是否在Android登錄或登錄登錄
- 16. 顯示用戶名登錄註銷ASP
- 17. Grails註銷另一個登錄用戶
- 18. Rails:註銷事件登錄用戶
- 19. 檢測用戶是否已登錄LinkedIn並記錄結果
- 20. 如何檢測到您使用Google登錄API註銷?
- 21. 如何檢查FaceBook用戶是否已登錄或在Android應用程序中註銷
- 22. 測試用戶是否登錄
- 23. 檢測註銷
- 24. Zend_Test - 爲PHPUnit測試登錄和註銷不同的用戶
- 25. Silverstripe登錄/註銷
- 26. Django登錄/註銷
- 27. facebook登錄/註銷
- 28. Facebook登錄/註銷
- 29. 登錄註銷smarty
- 30. Facebook登錄/註銷/檢查用戶支持PHP-SDK
LaunchDaemon在登錄時會自動運行,並且應該在註銷時終止。除此之外,你還有什麼問題要解決?如果你的托盤是一個LaunchDaemon,它運行的事實是一個強烈的暗示,用戶剛剛登錄。你需要將其與其他運行守護進程的情況分開嗎? –
我以爲LoginDaemon會以這種方式行事?我有一個gloabal服務,可以監聽未知連接,只有當用戶登錄並且托盤可見時才接受它們。但是,連接必須一直保持,因爲還有一些其他流量正在通過該連接。 – Nidhoegger
對不起,自從我建立其中一個以來已經過去了幾年。在我腦海中翻轉守護進程和代理。我會在下面回答。 –