我正在試用Mono,MonoMac和C#。我嘗試編寫一個基於Mac OS服務的簡單應用程序。我遵循Apple的developer documentation關於服務提供商的實施。如何在Mac OS註冊服務?
我的問題是:如何註冊一項服務。在Objective-C中,我會調用NSApplication的setServicesProvider方法。但是,MonoMac似乎沒有這樣的方法。這是正確的嗎?在mono文檔中,我發現NSApplication應該有一個服務提供者和一個相應的setter。但調用像SetServicesProvider:
MyClass myClass = new MyClass();
NSApplication.SetServicesProvider(myClass);
導致以下錯誤:
Error CS0117: `MonoMac.AppKit.NSApplication' does not contain a definition for `SetServicesProvider' (CS0117)
這裏有什麼問題? ServicesProvider屬性是目前尚未實現的10%AppKit的一部分(MonoMac項目頁面上的狀態部分在「AppKit(剩下大約10%待完成)」中說明)?
或者,我嘗試發現一類NSRegisterServicesProvider在蘋果開發者的例子建議,但我不能找到這樣的一類。
任何人知道如何使用的MonoMac註冊服務?能否請你點我一個解決方案,一個例子嗎?
我正在使用MonoDevelop 3.1.1和Xamarin.Mac
開發插件(版本3.1.1)。後者至少是在加載項管理器中聲明的內容。版本信息選項卡中的「Ab出MonoDevelop「說」Xamarin.Mac:未安裝「。但我認爲後者是不正確的,因爲我例如使用MonoMac.AppKit
訪問NSApplication
類。
我在Mono-OSX郵件列表上問了這個問題,但不幸的是我到目前爲止沒有收到任何回覆。