Použití mtouchu k balení aplikací Xamarin.iOS
I Telefon aplikace se dodávají jako sady aplikací. Jedná se o adresáře s příponou.app
, která obsahuje váš kód, data, konfigurační soubory a manifest, který i Telefon používá k získání informací o vaší aplikaci.
Proces převodu spustitelného souboru .NET na aplikaci je většinou řízen příkazem mtouch
, nástrojem, který integruje mnoho kroků potřebných k převodu aplikace na sadu. Tento nástroj slouží také ke spuštění aplikace v simulátoru a k nasazení softwaru na skutečné zařízení i Telefon nebo iPod Touch.
Podrobné pokyny
Zkontrolujte naši ruční stránku mtouch(1) se všemi možnými způsoby použití nástroje mtouch.
Instalace
Na Macu mtouch
je součástí Xamarin.iOS. Najdete ho v následujícím adresáři:
/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin
Pokud chcete usnadnit mtouch
použití, přidejte jeho nadřazený adresář do proměnné prostředí systému PATH
.
Pokud to chcete udělat například v Bash, přidejte na konec souboru ~/.bash_profile následující řádek:
export PATH=$PATH:/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin
Upozorňující
Pokud chcete použít mtouch
, nespoléhejte na existenci /Developer/MonoTouch/usr/bin, symbolický odkaz, který odkazuje na /Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin. Tento symbolický odkaz existuje pouze pro zachování kompatibility se staršími verzemi MonoTouch, které nebyly nainstalovány v /Library/Frameworks/..., a v budoucí verzi může zmizet.
Sestavování
Tento mtouch
příkaz může kód zkompilovat třemi různými způsoby:
- Kompilace pro testování simulátoru
- Kompilace pro nasazení zařízení
- Nasaďte spustitelný soubor do zařízení.
Sestavení pro simulátor
Když začnete, nejběžnějším scénářem použití bude vyzkoušet aplikaci v simulátoru, takže budete používat mtouch -sim
ke kompilaci kódu do balíčku simulátoru. To se provádí takto:
$ mtouch -sim Hello.app hello.exe
Sestavení pro zařízení
Pokud chcete vytvořit software pro zařízení, pomocí které aplikaci sestavíte mtouch -dev
, musíte navíc zadat název certifikátu použitého k podepsání aplikace. Následující příklad ukazuje, jak je aplikace vytvořena pro zařízení:
$ mtouch -dev -c "iPhone Developer: Miguel de Icaza" foo.exe
V tomto konkrétním případě k podepsání aplikace používáme certifikát "i Telefon Developer: Miguel de Icaza". Tento krok je velmi důležitý nebo fyzické zařízení odmítne načíst aplikaci.
Spuštění aplikace
Spuštění v simulátoru
Spuštění simulátoru je velmi jednoduché, jakmile máte sadu aplikací:
$ mtouch --sdkroot /Applications/Xcode.app -launchsim Hello.app
--sdkroot
Pokud příznak není nastavený, použije se výchozí hodnota xcode-select cesta a výsledkem bude následující upozornění:
např: upozornění MT0061: Není zadán žádný Xcode.app (pomocí --sdkroot), pomocí systémového Xcode hlášeného parametrem xcode-select --print-path: /Applications/Xcode.app/Contents/Developer
Výše uvedený příkazový řádek vytvoří výstup podobný tomuto:
Launching application
Application launched
PID: 98460
Press enter to terminate the application
Důrazně doporučujeme také uchovávat protokol standardního výstupu a standardních chybových souborů, které vám pomůžou při ladění. Výstup Console.WriteLine
přejde do stdout
a výstup z Console.Error.WriteLine
a všechny ostatní chybové zprávy modulu runtime přejde do stderr
.
Uděláte to tak, že použijete příznaky --stdout
a --stderr
příznaky:
../../tools/mtouch/mtouch --launchsim=Hello.app --stdout=output --stderr=error
Pokud vaše aplikace selže, zobrazí se výstup a chyba pro diagnostiku problému.
Nasazení do zařízení
Pokud chcete zařízení nasadit, musíte ho zřídit, jak je popsáno v dokumentu Správa zařízení společnosti Apple. Jakmile je vaše zařízení správně zřízené, můžete do zařízení nasadit zkompilovaný .app pomocí příkazu mtouch. Provedete to pomocí tohoto příkazu:
$ mtouch —sdkroot /Applications/Xcode.app -installdev=MyApp.app
--sdkroot
Pokud příznak není nastavený, použije se výchozí hodnota xcode-select cesta a výsledkem bude následující upozornění:
např: upozornění MT0061: Není zadán žádný Xcode.app (pomocí --sdkroot), pomocí systémového Xcode hlášeného parametrem xcode-select --print-path: /Applications/Xcode.app/Contents/Developer
Tyto kroky obvykle provádí Visual Studio pro Mac.
Reference
Podrobnosti o dalších možnostech příkazového řádku najdete na ruční stránce mtouch(1 ).