Xamarin.Mac 延伸模組支援
已針對多個 macOS 擴充點新增 Xamarin.Mac 2.10 支援:
- 搜尋工具
- 共用
- Today
限制和已知問題
以下是在 Xamarin.Mac 中開發擴充功能時可能發生的限制和已知問題:
- Visual Studio for Mac 目前沒有偵錯支援。 所有偵錯都必須透過 NSLog 和 控制台來完成。 如需詳細資訊,請參閱下方的秘訣一節。
- 擴充功能必須包含在主應用程式中,此應用程式會在向系統註冊一次時包含此應用程式。 然後,必須在 [系統喜好設定] 的 [擴充功能] 區段中啟用它們。
- 某些擴充功能損毀可能會破壞主應用程式穩定,並造成奇怪的行為。 特別是,通知中心的 Finder 和 Today 區段可能會變成「干擾」,並變得沒有回應。 這在 Xcode 的延伸模組專案中也經歷過,目前似乎與 Xamarin.Mac 無關。 通常這可以在系統記錄檔中看到(透過控制台,請參閱 提示 以取得詳細數據),列印重複的錯誤訊息。 重新啟動macOS似乎修正此問題。
提示
在 Xamarin.Mac 中使用擴充功能時,下列秘訣會很有説明:
由於 Xamarin.Mac 目前不支援偵錯延伸模組,偵錯體驗主要取決於執行和
printf
類似 語句。 不過,延伸模組會在沙箱進程中執行,因此Console.WriteLine
不會像在其他 Xamarin.Mac 應用程式中執行一樣。 直接叫NSLog
用會將偵錯訊息輸出至系統記錄檔。任何未攔截的例外狀況都會當機擴充程式,只提供系統記錄檔中的少量實用資訊。 在重新擲回之前,將麻煩的程式代碼包裝在
try/catch
(Exception) 區塊NSLog
中可能很有用。您可以從應用程式公用程式下的>主控台應用程式存取系統紀錄檔:
如上所述,執行擴充功能主機應用程式將會向系統註冊。 刪除應用程式套件組合並取消註冊。
如果已註冊應用程式的延伸模組「偏離」版本,請使用下列命令找出它們(以便刪除它們):
plugin kit -mv
逐步解說
由於開發人員會以與 Xamarin.iOS 擴充功能相同的方式來建立及使用 Xamarin.Mac 擴充功能,請參閱我們的 延伸模塊 簡介檔以取得詳細數據。
摘要
本文已快速探討在 Xamarin.Mac 2.10 版(及更新版本)應用程式中使用擴充功能。
相關連結
- Hello, Mac
- macOS 人性化介面指導方針 \(英文\)