Używanie aplikacji mtouch do tworzenia pakietów aplikacji Xamarin.iOS
Aplikacje i Telefon są dostarczane jako pakiety aplikacji. Są to katalogi z rozszerzeniem .app
zawierającym kod, dane, pliki konfiguracji i manifest używany przez program i Telefon do poznania aplikacji.
Proces przekształcania pliku wykonywalnego platformy .NET w aplikację jest głównie napędzany przez mtouch
polecenie , narzędzie, które integruje wiele kroków wymaganych do przekształcenia aplikacji w pakiet. To narzędzie służy również do uruchamiania aplikacji w symulatorze i wdrażania oprogramowania na rzeczywistym urządzeniu i Telefon lub iPod Touch.
Szczegółowe instrukcje
Sprawdź naszą stronę ręczną mtouch(1) ze wszystkimi możliwymi zastosowaniami narzędzia mtouch.
Instalacja
Na komputerze Mac mtouch
jest powiązany z platformą Xamarin.iOS. Można go znaleźć w następującym katalogu:
/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin
Aby ułatwić mtouch
korzystanie, dodaj katalog nadrzędny do zmiennej środowiskowej PATH
systemu.
Aby na przykład to zrobić w powłoce Bash, dodaj następujący wiersz na końcu pliku ~/.bash_profile :
export PATH=$PATH:/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin
Ostrzeżenie
Aby użyć mtouch
elementu , nie polegaj na istnieniu /Developer/MonoTouch/usr/bin, link symboliczny wskazujący /Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin. Ten link symboliczny istnieje tylko w celu zachowania zgodności ze starszymi wersjami MonoTouch, które nie zostały zainstalowane w /Library/Frameworks/..., i może zniknąć w przyszłej wersji.
Kompilowanie
Polecenie mtouch
może skompilować kod na trzy różne sposoby:
- Kompilowanie na potrzeby testowania symulatora.
- Kompilowanie na potrzeby wdrażania urządzeń.
- Wdróż plik wykonywalny na urządzeniu.
Kompilowanie dla symulatora
Podczas rozpoczynania pracy najczęściej używanym scenariuszem będzie wypróbowanie aplikacji w symulatorze, więc użyjesz polecenia , mtouch -sim
aby skompilować kod w pakiecie symulatora. Odbywa się to w następujący sposób:
$ mtouch -sim Hello.app hello.exe
Kompilowanie urządzenia
Aby skompilować oprogramowanie dla urządzenia, skompilujesz aplikację przy użyciu mtouch -dev
opcji, dodatkowo musisz podać nazwę certyfikatu używanego do podpisywania aplikacji. Poniżej przedstawiono sposób tworzenia aplikacji dla urządzenia:
$ mtouch -dev -c "iPhone Developer: Miguel de Icaza" foo.exe
W tym konkretnym przypadku używamy certyfikatu "i Telefon Developer: Miguel de Icaza" w celu podpisania aplikacji. Ten krok jest bardzo ważny lub urządzenie fizyczne odmówi załadowania aplikacji.
Uruchamianie aplikacji
Uruchamianie w symulatorze
Uruchamianie na symulatorze jest bardzo proste po utworzeniu pakietu aplikacji:
$ mtouch --sdkroot /Applications/Xcode.app -launchsim Hello.app
Jeśli flaga --sdkroot
nie zostanie ustawiona, zostanie ustawiona domyślna ścieżka xcode-select i spowoduje wyświetlenie następującego ostrzeżenia:
np. ostrzeżenie MT0061: Nie określono Xcode.app (przy użyciu --sdkroot) przy użyciu systemu Xcode zgłoszonego przez polecenie "xcode-select --print-path": /Applications/Xcode.app/Contents/Developer
Powyższy wiersz polecenia spowoduje wygenerowanie pewnych danych wyjściowych w następujący sposób:
Launching application
Application launched
PID: 98460
Press enter to terminate the application
Zdecydowanie zaleca się również przechowywanie dziennika standardowych plików wyjściowych i standardowych błędów, aby ułatwić debugowanie. Dane wyjściowe polecenia Console.WriteLine
są przekazywane do stdout
elementu , a dane wyjściowe z Console.Error.WriteLine
i inne komunikaty o błędach środowiska uruchomieniowego są przekazywane do .stderr
W tym celu użyj --stdout
flag i --stderr
:
../../tools/mtouch/mtouch --launchsim=Hello.app --stdout=output --stderr=error
Jeśli aplikacja nie powiedzie się, zobaczysz dane wyjściowe i błąd, aby zdiagnozować problem.
Wdrażanie na urządzeniu
Aby wdrożyć urządzenie na urządzeniu, musisz aprowizować urządzenie zgodnie z opisem w dokumencie Zarządzanie urządzeniami firmy Apple. Po prawidłowej aprowizacji urządzenia możesz użyć polecenia mtouch, aby wdrożyć skompilowany ".app" na urządzeniu. W tym celu użyj następującego polecenia:
$ mtouch —sdkroot /Applications/Xcode.app -installdev=MyApp.app
Jeśli flaga --sdkroot
nie zostanie ustawiona, zostanie ustawiona domyślna ścieżka xcode-select i spowoduje wyświetlenie następującego ostrzeżenia:
np. ostrzeżenie MT0061: Nie określono Xcode.app (przy użyciu --sdkroot) przy użyciu systemu Xcode zgłoszonego przez polecenie "xcode-select --print-path": /Applications/Xcode.app/Contents/Developer
Te kroki są zwykle wykonywane przez Visual Studio dla komputerów Mac.
Odwołanie
Aby uzyskać szczegółowe informacje na temat innych opcji wiersza polecenia, zobacz stronę ręczną mtouch(1 ).