Xamarin.Mac Uzantısı Desteği

Xamarin.Mac 2.10'da birden çok macOS uzantı noktası için destek eklendi:

  • Bulucu
  • Paylaş
  • Bugün

Sınırlamalar ve Bilinen Sorunlar

Aşağıda, Xamarin.Mac'te uzantı geliştirme sırasında ortaya çıkabilir sınırlamalar ve know sorunları ve bulunmaktadır:

  • Şu anda bir hata ayıklama desteği Mac için Visual Studio. Tüm hata ayıklamanın NSLog ve Konsolu aracılığıyla yapılması gerekir. Ayrıntılar için aşağıdaki ipuçları bölümüne bakın.
  • Uzantılar, sistemle kayıt ile bir kez çalıştırılarak bir konak uygulamasında yer alan bir uygulama içinde yer alan bir uygulamadır. Daha sonra Sistem Tercihleri'nin Uzantı bölümünde etkinleştirilmeleri gerekir.
  • Bazı uzantı kilitlenmeleri konak uygulamanın kararsız hale gelebilir ve garip davranışlara neden olabilir. Özellikle, Bildirim Merkezi'nin Finder ve Today bölümü "engellenmiş" ve yanıt vermemeye başlıyor olabilir. Bu, Xcode'daki uzantı projelerinde de deneyimlidir ve şu anda Xamarin.Mac ile ilgili olarak görünür. Bu durum genellikle sistem günlüğünde (Konsol aracılığıyla, ayrıntılar içinbkz. İpuçları) yinelenen hata iletilerini yazdırarak görülebilir. Bunu düzeltmek için macOS yeniden başlatılacak gibi görünüyor.

İpuçları

Xamarin.Mac'te uzantılarla çalışırken aşağıdaki ipuçları yararlı olabilir:

  • Xamarin.Mac şu anda uzantılarda hata ayıklamayı desteklemez, hata ayıklama deneyimi öncelikli olarak yürütmeye ve benzer printf deyimlere bağlıdır. Ancak, uzantılar bir korumalı alan sürecinde çalışır, bu nedenle diğer Console.WriteLine Xamarin.Mac uygulamalarında olduğu gibi davranmaz. Doğrudan iptal etmek, sistem günlüğüne hata ayıklama iletileri oluşturur.

  • Yakalanmayan özel durumlar, Sistem Günlüğü'ne yalnızca az miktarda yararlı bilgi sağlayarak uzantı işleminin kilitlenmesine neden olur. Yeniden atmadan önce olan try/catch bir (Özel durum) NSLog bloğunda sorunlu kodu sarmalama yararlı olabilir.

  • Sistem Günlüğüne Konsol uygulamasından Uygulama Yardımcı Programlarıaltındaerişilebilir:

    Sistem günlüğü

  • Yukarıda belirtildiği gibi, uzantı konak uygulamasını çalıştırmanız bunu sisteme kaydedecek. Uygulama paketi silindi ve kaydını silin.

  • Bir uygulamanın uzantılarının "uzak" sürümleri kaydedilirse, bunları bulmak için aşağıdaki komutu kullanın (silinebilirler): plugin kit -mv

Kılavuz ve Örnek Uygulama

Geliştirici Xamarin.iOS uzantılarıyla aynı şekilde Xamarin.Mac uzantıları oluşturacak ve bu uzantılarla çalışacaktır. Daha fazla ayrıntı için lütfen Uzantılara Giriş belgelerimize bakın.

Her uzantı türünün küçük ve çalışan örneklerini içeren örnek bir Xamarin.Mac projesi burada bulunabilir.

Özet

Bu makale, Xamarin.Mac sürüm 2.10 (ve daha yenisi) uygulamasında uzantılarla çalışmaya hızlı bir bakış sağlar.