Obsługa rozszerzenia Xamarin.Mac
W systemie Xamarin.Mac 2.10 dodano obsługę wielu punktów rozszerzeń systemu macOS:
- Finder
- Udostępnij
- Today
Ograniczenia i znane problemy
Poniżej przedstawiono ograniczenia i informacje o problemach, które mogą wystąpić podczas tworzenia rozszerzeń na platformie Xamarin.Mac:
- Obecnie nie ma obsługi debugowania w Visual Studio dla komputerów Mac. Wszystkie debugowanie należy wykonać za pośrednictwem NSLog i konsoli. Szczegółowe informacje można znaleźć w poniższej sekcji z poradami.
- Rozszerzenia muszą być zawarte w aplikacji hosta, która po uruchomieniu jednorazowo z rejestracją w systemie. Następnie należy je włączyć w sekcji Rozszerzenia preferencji systemowych.
- Niektóre awarie rozszerzenia mogą destabilizować aplikację hosta i powodować dziwne zachowanie. W szczególności program Finder i sekcja Today Centrum powiadomień mogą stać się "zacięte" i nie odpowiadać. Wystąpiło to również w projektach rozszerzeń w środowisku Xcode i obecnie nie ma związku z platformą Xamarin.Mac. Często można to zobaczyć w dzienniku systemu (za pośrednictwem konsoli, zobacz Wskazówki, aby uzyskać szczegółowe informacje) drukowanie powtarzających się komunikatów o błędach. Ponowne uruchomienie systemu macOS wydaje się rozwiązać ten problem.
Wskazówki
Poniższe wskazówki mogą być przydatne podczas pracy z rozszerzeniami na platformie Xamarin.Mac:
Ponieważ platforma Xamarin.Mac obecnie nie obsługuje rozszerzeń debugowania, środowisko debugowania będzie zależeć przede wszystkim od wykonywania i
printf
instrukcji podobnych. Rozszerzenia są jednak uruchamiane w procesie piaskownicy, dlategoConsole.WriteLine
nie będą działać tak samo jak w innych aplikacjach platformy Xamarin.Mac. Wywołanie bezpośrednio spowoduje wyprowadzenieNSLog
komunikatów debugowania do dziennika systemu.Wszelkie nieuchwycone wyjątki spowodują awarię procesu rozszerzenia, zapewniając tylko niewielką ilość przydatnych informacji w dzienniku systemu. Zawijanie kłopotliwego
try/catch
kodu w bloku (wyjątek), któryNSLog
jest przed ponownym zgłaszaniem może być przydatne.Dostęp do dziennika systemu można uzyskać z poziomu aplikacji konsolowej w obszarze Narzędzia aplikacji>:
Jak wspomniano powyżej, uruchomienie aplikacji hosta rozszerzenia spowoduje zarejestrowanie go w systemie. Usunięcie pakietu aplikacji przy użyciu wyrejestrowania go.
Jeśli zarejestrowane są "bezpańskie" wersje rozszerzeń aplikacji, użyj następującego polecenia, aby je zlokalizować (aby można je było usunąć):
plugin kit -mv
Przewodnik
Ponieważ deweloper utworzy rozszerzenia platformy Xamarin.Mac i będzie pracować z tymi samymi rozszerzeniami platformy Xamarin.iOS, zapoznaj się z naszą dokumentacją Wprowadzenie do rozszerzeń , aby uzyskać więcej szczegółów.
Podsumowanie
W tym artykule przedstawiono szybką pracę z rozszerzeniami w aplikacji Xamarin.Mac w wersji 2.10 (i nowszej).