Použití mtouch k kompletování aplikací Xamarin. iOS

aplikace iPhone jsou dodávány jako sady aplikací. jedná se o adresáře s příponou, .app které obsahují váš kód, data, konfigurační soubory a manifest, který iPhone používá pro další informace o vaší aplikaci.

Proces přepnutí spustitelného souboru .NET do aplikace je většinou založený na mtouch příkazu, který integruje mnoho kroků požadovaných k předané aplikaci do sady. tento nástroj slouží také ke spuštění aplikace v simulátoru a k nasazení softwaru do skutečného iPhone nebo iPod Touch zařízení.

Podrobné pokyny

Podívejte se na naši mtouch (1) ruční stránku se všemi možnými použití nástroje mtouch.

Instalace

Na Macu mtouch je součástí sady Xamarin. iOS. Najdete ho v následujícím adresáři:

/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin

Pro mtouch pohodlné použití přidejte svůj nadřazený adresář do PATH proměnné prostředí systému.

Pokud to chcete provést 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

Upozornění

Chcete-li použít mtouch , nespoléhejte na existenci mtouch, symbolické propojení, které odkazuje na /Library/Frameworks/Xamarin.iOS.Framework/Versions/Current/bin. Tento symbolický odkaz existuje jenom pro zachování kompatibility se staršími verzemi MonoTouch, které nebyly nainstalované v /Library/Frameworks/..., a v budoucí verzi může zmizet.

Sestavování

mtouchPříkaz může kompilovat kód třemi různými způsoby:

  • Kompilovat pro testování simulátoru.
  • Kompilovat pro nasazení zařízení.
  • Nasaďte spustitelný soubor do zařízení.

Sestavování simulátoru

Až začnete, nejběžnější scénář použití bude k tomu, abyste si vyzkoušeli aplikaci v simulátoru, takže použijete mtouch -sim pro zkompilování kódu do balíčku simulátoru. To se dělá takto:

$ mtouch -sim Hello.app hello.exe

Sestavování pro zařízení

Pokud chcete vytvořit software pro zařízení, sestavíte aplikaci pomocí mtouch -dev Možnosti, navíc potřebujete zadat název certifikátu použitého k podepsání aplikace. Následující příklad ukazuje, jak je aplikace sestavena pro zařízení:

$ mtouch -dev -c "iPhone Developer: Miguel de Icaza" foo.exe

v tomto konkrétním případě používáme k podepsání aplikace certifikát "iPhone Developer: Miguel de Icaza". Tento krok je velmi důležitý, nebo fyzické zařízení odmítne aplikaci načíst.

Spuštění aplikace

Spouštění na simulátoru

Spouštění na simulátoru je velmi jednoduché, když máte sadu prostředků aplikace:

$ mtouch --sdkroot /Applications/Xcode.app -launchsim Hello.app 

Pokud --sdkroot příznak nastaven není, bude ve výchozím nastavení Xcode vybrat cestu a výsledkem bude následující upozornění:

například: Warning MT0061: není zadán Xcode.app (using--sdkroot), který používá systém Xcode, jak je uvedeno v ' 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, abyste také zachovali protokol standardního výstupního a standardního chybového souboru, které vám pomůžou při ladění. Výstup Console.WriteLine přejde do a stdout výstup z Console.Error.WriteLine a všechny ostatní chybové zprávy modulu runtime přecházejí na stderr .

K tomu použijte --stdout--stderr příznaky a:

../../tools/mtouch/mtouch --launchsim=Hello.app --stdout=output --stderr=error

Pokud se vaše aplikace nezdařila, můžete se podívat na výstup a chybu a diagnostikovat problém.

Nasazení do zařízení

K nasazení do zařízení musíte zřídit zařízení, jak je popsané v dokumentu Správa zařízení společnosti Apple. Jakmile je zařízení správně zřízené, můžete k nasazení zkompilované aplikace ". app" do zařízení použít příkaz mtouch. Provedete to pomocí tohoto příkazu:

$ mtouch —sdkroot /Applications/Xcode.app -installdev=MyApp.app

Pokud --sdkroot příznak nastaven není, bude ve výchozím nastavení Xcode vybrat cestu a výsledkem bude následující upozornění:

například: Warning MT0061: není zadán Xcode.app (using--sdkroot), který používá systém Xcode, jak je uvedeno v ' 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 stránce mtouch (1) na ruční stránce.