Podpora rozšíření Xamarin.Mac

V Xamarin.Macu 2.10 byla přidána podpora pro několik ná příponových bodů macOS:

  • Finder
  • Sdílení
  • Dnes

Omezení a známé problémy

Níže jsou uvedená omezení a známé problémy, ke kterým může dojít při vývoji rozšíření v Xamarin.Macu:

  • V současné době neexistuje žádná podpora ladění v Visual Studio pro Mac. Veškeré ladění je potřeba provést prostřednictvím protokolu NSLog a konzoly. Podrobnosti najdete v části s tipy níže.
  • Rozšíření musí být obsažena v hostitelské aplikaci, která se spustí jednou s registrací v systému. Potom je nutné je povolit v části Rozšíření v předvolbách systému.
  • Některá selhání rozšíření mohou destabilizovat hostitelskou aplikaci a způsobit neobvyklé chování. Konkrétně se může stát, že se Finder a část Centrum oznámení Dnes "zaseknou" a přestane reagovat. To má také zkušenosti s projekty rozšíření v Xcode a v současné době se zdá, že nesouvisí s Xamarin.Mac. Často se to může zobrazit v systémovém protokolu (přes konzolu ,viz Tipy podrobnosti) tisk opakujících se chybových zpráv. Zdá se, že restartováním macOS tento problém opravíte.

Tipy

Následující tipy mohou být užitečné při práci s rozšířeními v Xamarin.Mac:

  • Protože Xamarin.Mac v současné době nepodporuje rozšíření ladění, bude prostředí ladění primárně záviset na provádění příkazů printf a podobně. Rozšíření se však spouštějí v procesu sandboxu, takže nebudou fungovat stejně jako v Console.WriteLine jiných aplikacích Xamarin.Mac. Přímé vyvolání bude výstupem zpráv ladění do systémového protokolu.

  • Všechny nezachycené výjimky dojde k chybě procesu rozšíření a v systémovém protokolu získáte jen malé množství užitečných informací. Zabalení problémového kódu do bloku (Exception), který je před vyvoláním znovu, try/catchNSLog může být užitečné.

  • Systémový protokol je přístupný z konzolové aplikace v části Nástrojeaplikací:

    Systémový protokol

  • Jak je uvedeno výše, spuštění hostitelské aplikace rozšíření ji zaregistruje v systému. Odstraňte sadu aplikací pomocí zrušení registrace.

  • Pokud jsou zaregistrované "vychýlí" verze rozšíření aplikace, vyhledejte je pomocí následujícího příkazu (aby je bylo možné odstranit): plugin kit -mv

Návod a ukázková aplikace

Vzhledem k tomu, že vývojář bude vytvářet rozšíření Xamarin.Mac a pracovat s ním stejným způsobem jako rozšíření Xamarin.iOS, další podrobnosti najdete v naší dokumentaci Úvod do rozšíření.

Příklad projektu Xamarin.Mac obsahujícího malé funkční ukázky jednotlivých typů rozšíření najdete tady.

Souhrn

Tento článek se rychle podíval na práci s rozšířeními v aplikaci Xamarin.Mac verze 2.10 (a vyšší).